◈ 기본 연습
1. 다음 프로그램의 출력 결과를 예측하시오.
#include <stdio.h> int main() { int i = 8; i *= 4; printf("%d \n", i); return 0; }
답: 32
i *= 4; 는 i = i*4; 와 같은 결과를 갖습니다.
2. 다음 프로그램의 출력 결과를 예측하시오.
#include <stdio.h> int main() { int i = 8; int j = 0; j = i == 8; printf("%d %d\n", i, j); return 0; }
답:
8 1
j=i==8; 은 i==8 연산을 수행한 후에 수행 결과를 j에 대입합니다.
i==8은 연산 결과가 참이므로 1입니다.
3. 다음 프로그램에서 잘못된 부분을 찾고 이유를 설명하시오.
#include <stdio.h> int main() { int i = 8; i + 2 = 9; printf("%d \n", i); return 0; }
답:
i+2 = 9;
i+2는 연산 결과이므로 상수입니다.
상수는 대입 연산자 좌항에 올 수 없습니다.