모두CBT

입력 안내에 따라 두 사람의 나이를 입력받고 그 합을 구하는 C 프로그… | [9급 지방직 컴퓨터일반] 16년 1회차 기출문제 상세 페이지

1[9급 지방직 컴퓨터일반] 16년 1회차
입력 안내에 따라 두 사람의 나이를 입력받고 그 합을 구하는 C 프로그램을 작성하려고 한다. 프로그램이 정상적으로 동작하도록 다음의 코드 조각을 올바른 순서로 나열한 것은?
ㄱ. scanf("%d%d", &age1, &age2);
ㄴ. result = age1 + age2;
ㄷ. int age1, age2, result;
ㄹ. printf("나이의 합은 %d살입니다.\n", result);
ㅁ. printf("철수와 영희의 나이를 입력하세요 :");
1
ㄷ → ㅁ → ㄱ → ㄴ → ㄹ
2
ㄷ → ㄱ → ㄴ → ㅁ → ㄹ
3
ㅁ → ㄱ → ㄷ → ㄹ → ㄴ
4
ㄷ → ㄱ → ㅁ → ㄴ → ㄹ
해설

올바른 순서는 ㄷ → ㅁ → ㄱ → ㄴ → ㄹ(변수 선언 → 입력 안내 → 입력 → 계산 → 출력)이다.

C에서는 변수를 먼저 선언해야 쓸 수 있고, 사용자는 안내 문구를 본 뒤에 값을 입력하므로 printf 안내가 scanf보다 앞서야 한다. 합은 입력을 받은 뒤 계산하고, 계산된 result를 마지막에 출력한다.

  • ㄷ → ㄱ → ㄴ → ㅁ → ㄹ은 입력을 먼저 받은 뒤 안내 문구를 출력하므로 입력 안내 순서가 어긋난다.
  • ㅁ → ㄱ → ㄷ → ㄹ → ㄴ은 선언 전에 age1·age2를 사용하고, 합을 계산하기 전에 출력한다.
  • ㄷ → ㄱ → ㅁ → ㄴ → ㄹ도 안내 문구가 입력 뒤에 나와 사용자가 무엇을 입력할지 모른 채 대기하게 된다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.