본문 바로가기

정보처리기사 Daily 문제

정보처리기사 실기 Daily 문제 13

출처 : [2021년 제2회 기사 실기 출제예상 문제] (6과목) 프로그램밍 언어 활용 - 64 : 네이버 카페 (naver.com)

다음 C 프로그램의 결과를 쓰시오

int main()

{ int cnt = 0;

do {

cnt++;

} while(cnt < 5);

if(cnt == 1) {

cnt++;

} else {

cnt = cnt + 3;

}

printf("%d", cnt);

return 0;

정답 : 8

do while 문은 한번이라도 실행하기 때문에, cnt가 1씩 증가되고 cnt가 4일 때 do에서 5로 되어 while문을 빠져나오고 if문으로 간다. cnt가 5이기 때문에 else 문으로 이동하여 5+3을 하게 되고 8을 출력한다.

출처 : [2021년 제1회 기사 실기 출제예상 문제] (6과목) 프로그램밍 언어 활용 - 2 : 네이버 카페 (naver.com)

다음 C 프로그램의 결과를 출력하시오

int main()

{

char sTemp[16] = "Hello Sujebi";

printf("%s", &sTemp[6]);

return 0;

}

정답 : Sujebi

$sTemp[6]은 주소를 말한다.

%s와 &sTemp[6]이기 때문에 S(sTemp[6])만 출력하는 것이 아니라, 공백 뒤까지 다 출력한다.

S만 출력하고 싶다면 %c, sTmep[6]으로 바꿔야 한다.

sTemp[0]='H' //1번째

sTemp[1]='e' //2번째

sTemp[2]='l' //3번째

sTemp[3]='l' //4번쨰

sTemp[4]='o' //5번째

sTemp[5]=' ' //6번째

sTemp[6]='S' //7번째

sTemp[7]='u'

sTemp[8]='j'

sTemp[9]='e'

sTemp[10]='b'

sTemp[11]='i'