30 likes | 202 Views
아래 프로그램의 출력을 적고 그렇게 되는 이유를 설명하시오. fruit 이 2 일 때 아래 프로그램의 출력을 적으시오 . ( 함정이 있으므로 신중히 답하시오 .). #include < stdio.h > int main(void) { int i , j; i = 2; j = ++ i + 1; printf ("%d %d<br>", i , j); j = i ++ + 1; printf ("%d %d<br>", i , j); return 0; }. switch(fruit ) {
E N D
아래 프로그램의 출력을 적고 그렇게 되는 이유를 설명하시오. fruit이 2일 때 아래 프로그램의 출력을 적으시오. (함정이 있으므로 신중히 답하시오.) #include <stdio.h> int main(void) { inti, j; i = 2; j = ++i + 1; printf("%d %d\n", i, j); j = i++ + 1; printf("%d %d\n", i, j); return 0; } switch(fruit) { case 1: printf("사과“); break; case 2: printf(“배“); case 3: printf("바나나“); break; default: printf(“과일“); break; }
모범답안 3 4 4 4 초기에 i는 2 j = ++i + 1; 사전증가이므로 i가 증가하여 3가 됨 j = i + 1 계산하여 j 값은 4 프린트 문장에 의해 3과 4가 출력됨 (i, j) j = i++ + 1; 사후증가이므로 j = i + 1 계산하여 j는 4 i가 증가하여 4가 됨 프린트 문장에 의해 4와 4가 출력됨 (i, j) 배바나나