본문 바로가기
C & C++/윤성우의 열혈 C 프로그래밍

[열혈 C] Part 01 C언어의 기본 - 서식문자와 연산자

by 거북이 코딩 2023. 10. 3.

Chapter 02-3 printf 함수의 기본적인 이해

 

#include <stdio.h>

int main(void)
{
    printf("Hello Everybody\n");
    printf("%d\n", 1234);
    printf("%d %d\n", 10, 20);
    return 0;
}
Hello Everybody
1234
10 20

 

문제 1
다음의 출력결과를 보이도록 예제를 작성해보자. 단, 출력되는 숫자들(20, 123, 456)은 서식문자 %d를 이용하여 출력하도록 하자.
제 이름은 홍길동입니다.
제 나이는 20살이고요.
제가 사는 곳의 번지수는 123-456입니다.
#include <stdio.h>

int main(void)
{
    printf("제 이름은 홍길동입니다.\n");
    printf("제 나이는 %d살이고요.\n", 20);
    printf("제가 사는 곳의 번지수는 %d-%d입니다.\n", 123, 456);
    return 0;
}
제 이름은 홍길동입니다.
제 나이는 20살이고요.
제가 사는 곳의 번지수는 123-456입니다.

 

문제 2
다음의 출력결과를 보이도록 예제를 작성해보자. 이번에도 역시 출력되는 숫자들은 서식문제 %d를 이용해서 출력하도록 하자.
4 x 5 = 20
7 x 9 = 63
#include <stdio.h>

int main(void)
{
    printf("%d x %d = %d\n", 4, 5, 4*5);
    printf("%d x %d = %d\n", 7, 9, 7*9);
    return 0;
}
4 x 5 = 20
7 x 9 = 63

 

Chapter 03-1 연산을 위한 연산자와 값의 저장을 위한 변수

 

#include <stdio.h>

int main(void)
{
    int num1, num2;    //변수 num1, num2의 선언
    int num3 = 30, num4 = 40;    //변수 num3, num4의 선언 및 초기화

    printf("num1: %d, num2: %d \n", num1, num2);
    num1 = 10;    //변수 num1의 초기화
    num2 = 20;    //변수 num2의 초기화

    printf("num1: %d, num2: %d \n", num1, num2);
    printf("num3: %d, num4: %d \n", num3, num4);
    return 0;
}
num1: -858993460, num2: - 858993460
num1: 10, num2: 20
num3: 30, num4: 40

 위 예제는 현재 비주얼 스튜디오에서는 오류가 납니다. 다만 예제가 의미하는것은 초기화 되지 않은 변수를 출력하면 쓰레기값이 나온다는 것입니다.

 

변수의 이름을 지을 때 적용되는 규칙

  • 변수의 이름은 알파벳, 숫자, 언더바( _ )로 구성된다.
  • C언어은 대소문자를 구분한다. 따라서 변수 Num과 변수 num은 서로 다른 변수이다.
  • 변수의 이름은 숫자로 시작할 수 없고, 키워드도 변수의 이름으로 사용할 수 없다
  • 이름 사이에 공백이 삽입될 수 없다.

 

Chapter 03-2 C언어의 다양한 연산자 소개

 

연산자 연산자의 기능
= 연산자 오른쪽에 있는 값을 연산자 왼쪽에 있는 변수에 대입한다.
+ 두 피연산자의 값을 더한다.
- 왼쪽의 피연산자 값에서 오른쪽의 피연산자 값을 뺀다.
* 두 피연산자의 값을 곱한다.
/ 왼쪽의 피연산자 값을 오른쪽의 피연산자 값으로 나눈다.
% 왼쪽의 피연산자 값을 오른쪽의 피연산자 값으로 나눴을 때 얻게 되는 나머지를 반환한다.

 

마치며

 

 앞으로의 포스팅은 개념적인 부분을 대폭 줄이고 제가 공부하면서 중요하다고 생각되는 내용 위주로 써 볼 생각입니다. 책의 내용을 정리해도 딱히 다른분들에게 도움될것 같지 않기 때문입니다. 어떤 식으로 글을 써야 조금이라도 도움이 될지 생각해보며 다음 포스팅을 써보겠습니다!