모두CBT

다음 C 코드는 반복구조를 이용하여 n번째 피보나치 수를 구하는 함수이… | [7급 국가직 자료구조론] 22년 1회차 기출문제 상세 페이지

1[7급 국가직 자료구조론] 22년 1회차
다음 C 코드는 반복구조를 이용하여 n번째 피보나치 수를 구하는 함수이다. (가), (나)에 들어갈 내용을 바르게 연결한 것은? (단, n은 0 이상의 정수이다)
int fibonacci(int n){
int x = 0, y = 1, z = 0;
if (n < 2) return n;
while ([ (가) ]) {
[ (나) ] ;
x = y;
y = z;
}
return z;
}
(가)  (나)
1
n-- > 1  z = x + y
2
n-- > 1  z = x - y
3
n-- >= 1  z = x + y
4
n-- <= 1  z = x - y
해설

(가) n-- > 1, (나) z = x + y이다.

피보나치 수는 앞 두 수의 합이므로 z = x + y 후 x, y를 한 칸씩 민다. n이 2 이상이면 반복은 n−1회 돌아야 하며, n-- > 1은 n=2에서 한 번 돌아 1을, n=3에서 두 번 돌아 2를 반환한다.

  • n-- > 1, z = x - y: 두 수의 차는 피보나치 수가 아니다.
  • n-- >= 1, z = x + y: n=2에서 두 번 돌아 2를 반환하므로 한 항 더 진행된다.
  • n-- <= 1, z = x - y: n이 2 이상이면 조건이 처음부터 거짓이라 반복하지 않는다.

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

이어서 풀어보기

[7급 국가직 자료구조론] 22년 1회차 25문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요7급 국가직 자료구조론 기출문제 암기장 전체 보기