▩ 변수의 이해 및 작성 규칙
1. 변수의 특징
- 변수명은 영문자, 숫자, 밑줄(_) 문자만을 사용한다.
- 변수명의 첫 문자는 반드시 영문자나 밑줄 문자이어야 한다.
숫자는 변수명의 첫자로 올 수 없다.
- 첫 문자를 숫자로 시작하면 상수로 인식한다.
- 용도가 지정되어 있는 예약어는 변수명으로 사용할 수 없다.
- 변수명은 가급적 의미 있는 이름을 사용한다.
- C언어는 대소문자를 구별함으로 변수명에 대소문자를 주의한다.
- 변수나 메소드의 첫자는 소문자, 클래스는 대문자를 주로 사용한다.
- 변수의 마디는 대문자를 사용하는 경우가 많다.
2. 변수의 작성 규칙
- 헝가리언 표기법
. 회사이름: cn, comName, _com_name
- 스칼라 표기법
. 첫자를 무조건 대문자로하는 의미있는 변수명을 줍니다.
. 회사이름: CompanyName, CompanyArea
>>>>> 상수를 이용하여 합, 차, 곱을 계산한 경우
#include <stdio.h>
void main() {
printf("%d와 %d의 합은 %d입니다.\n", 30, 15, 30+15);
printf("%d와 %d의 차는 %d입니다.\n", 30, 15, 30-15);
printf("%d와 %d의 곱은 %d입니다.\n", 30, 15, 30*15);
}
▩ 상수(리터럴)
- 변수의 값 자체를 말합니다.
- 숫자 상수: 10
- 문자 상수: 'a'
- 문자열 상수: "ABCDE"
>>>>> 간단한 성적처리 프로그램(정확한 소수 출력하도록 수정할 것)
- 변수를 사용하지 않으면 입력을 받을 수 없습니다.
- 정수/정수 = 정수가 됨으로 (float)정수/정수으로 변경하여 처리합니다.
#include <stdio.h>
void main() {
char name[30];
int hak;
int kor;
int eng;
int mat;
int tot;
float ave;
printf("정보를 입력하세요.\n\n");
printf("이름을 입력하세요 : ");
scanf("%s", name);
printf("학번을 입력하세요 : ");
scanf("%d", &hak);
printf("국어점수를 입력하세요 : ");
scanf("%d", &kor);
printf("영어점수를 입력하세요 : ");
scanf("%d", &eng);
printf("수학점수를 입력하세요 : ");
scanf("%d", &mat);
tot=kor+eng+mat;
ave=tot/3;
printf("이름 : %s\n", name);
printf("학번 : %d\n", hak);
printf("국어 : %d\n", kor);
printf("영어 : %d\n", eng);
printf("수학 : %d\n", mat);
printf("합계 : %d\n", tot);
printf("평균 : %f", ave);
}
>>>>> 변수의 초기화
- 변수에 미리 값을 할당하는 것을 초기화라고합니다.
#include <stdio.h>
void main() {
char name[30]="Hong";
int hak=3214;
int kor=78;
int eng=96;
int mat=54;
int tot=kor+eng+mat;
float ave=tot/3;
printf("이름 : %s\n", name);
printf("학번 : %d\n", hak);
printf("국어 : %d\n", kor);
printf("영어 : %d\n", eng);
printf("수학 : %d\n", mat);
printf("합계 : %d\n", tot);
printf("평균 : %f", ave);
}
>>>>> 서로다른 형의 계산
- 작은 타입은 큰 변수 타입으로 흡수됩니다.
#include <stdio.h>
void main() {
char c = 'T';
int i = 10;
float f = 20.1;
printf("%c+%d = %d\n", c, i, c+i);
printf("%d+%f = %f", i, f, f+i);
}
>>>>> cast연산의 사용 1
#include <stdio.h>
void main() {
int i = 10, j = 20;
float f = 30.1;
printf("%d+%f = %f\n", i, f, f+i);
printf("%d+%f = %d\n", i, f, (int)f+i);
printf("%d+%d = %f\n", i, j, (float)i+j);
}
>>>>> cast 연산의 사용 2
#include <stdio.h>
void main() {
char c = 'A';
int i = 10;
float f = 3.2;
printf("(int)(c+i+f)의 결과 : %d\n", (int)(c+i+f));
printf("(c+i+f)의 결과 : %f\n", c+i+f);
printf("(int)f*i-2의 결과 : %d\n", (int)f*i-2);
printf("f*i-2의 결과 : %f\n", f*i-2);
}