11. 변수-자료형 예시
나이:21 무게:50.0 신장:163.5
#include <stdio.h>
int main(int argc, char * argv[])
{
int age = 21;
float weight = 50.0, height = 163.5;
printf("나의 나이는 %d세 입니다.\n",age);
printf("나의 몸무게는 %f(kg) 입니다.\n",weight);
printf("나의 신장은 %f(cm) 입니다.\n",height);
}
정수를 저장하기 위해 int로 선언하고 age라는 변수를 사용했다.
그리고 여기에 21이라는 데이터를 저장하게 된다.
실수를 저장하기 위해 float로 선언하고 두 데이터를 저장하기 위해
weight, height를 선언하고 각 50.0, 163.5를 대입했다.
그리고 입력된 데이터를 출력하기 위해 각 자료형에 맞는 format문자를 사용하여 데이터를 출력하는 간단한 예제이다.
앞으로의 모든 공부를 할 경우 변수 선언이 나타나면 아래 그림처럼 사각형으로 변수를 표현하고 각각 변수의 명과 데이터를 입력하여 데이터의 흐름을 파악해 보자.
#include <stdio.h>
int main(int argc, char * argv[])
{
int num = 123;
char ch = 'D';
num = num+1;
ch = 'G';
printf("num = %d\n", num);
printf("ch = %c\n", ch);
}
위의 소스는 정수형 변수인 num에 123을 입력하고 문자형 변수에 'D'를 대입했다.
C언어에서는 연산을 오른쪽에서 처리하고 결과를 왼쪽에 저장한다.
num = num+1은 num+1을 먼저 처리하고 그 결과를 다시 num에 저장하겠다는 것이다.
결국 num은 124가 저장되어 있게된다.
ch변수에는 현재 'D'가 존재하지만 ch = 'G'로 인해 'D'는 지워지고 최종적으로 'G'가 존재하게 된다.
#include <stdio.h>
int main(int argc, char * argv[])
{
float height_inch = 70.0;
float height_cm = height_inch * 2.54;
printf("나의 신장은 %f(cm)입니다.\n", height_cm);
}
70.0(inch)*2.54=177.80(cm)
위의 연산은 실수형 변수에 데이터를 대입하고 그 변수에 2.54를 곱하여 그 연산 결과를 다른 변수에 저장하는 내용이다.
이처럼 변수와 상수를 곱하여 다른 변수에 저장을 할 수 있다.
#include <stdio.h>
int main(int argc, char*argv[])
{
char ch = 'A';
int num = 5, ret;
ret = ch + num;
printf("ret = %d\n", ret);
}
'A'(65)(ch)+5(num)=70(ret)
위의 소스는 문자와 숫자의 연산을 보여주고 있다.
문자는 ASCII코드를 가지고 있고 'A'라는 문자는 65라는 값을 갖고 있고
이 수와 5를 더하여 ret변수에 결과를 저장하게 된다.
출력형식을 보면 %d로 출력함으로 70이라는 결과가 나타나며 이 부분이 %c로 변경될 경우 'F'라는 결과를 출력하게 된다.
댓글