모두CBT

다음 C프로그램의 실행 결과로 옳은 것은?#include <std… | [계리직 컴퓨터일반] 16년 1회차 기출문제 상세 페이지

1[계리직 컴퓨터일반] 16년 1회차
다음 C프로그램의 실행 결과로 옳은 것은?
#include <stdio.h>
int main() {
int a=120, b=45;
while ( a != b ) {
if ( a > b) a = a - b;
else b = b -a;
}
printf("%d", a);
}
1
5
2
15
3
20
4
25
해설

출력값은 15로, 두 수의 최대공약수를 구하는 코드이다.

큰 수에서 작은 수를 빼는 과정을 두 수가 같아질 때까지 반복한다. (120, 45) → (75, 45) → (30, 45) → (30, 15) → (15, 15)에서 반복이 끝나고 a의 값 15가 출력된다.

  • 5: 120과 45의 공약수이지만 최대공약수가 아니다.
  • 20: 반복 중 어느 단계에서도 나타나지 않는 값이다.
  • 25: 반복 중 어느 단계에서도 나타나지 않는 값이다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[계리직 컴퓨터일반] 16년 1회차 20문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요계리직 컴퓨터일반 기출문제 암기장 전체 보기