문제
다음 C 프로그램의 실행 결과는?
#include <stdio.h> int sum(int n) { if (n == 0) return 0; return n + sum(n - 1); } int main() { printf("%d", sum(4)); return 0; }
① 6 ② 8 ③ 10 ④ 12
정답
3번
해설
재귀함수 sum(4)는 4 + sum(3) → 4 + 3 + sum(2) → 4 + 3 + 2 + sum(1) → 4 + 3 + 2 + 1 + sum(0) → 4 + 3 + 2 + 1 + 0 = 10을 계산한다.