//재귀 호출로 factorial 값 구하기
#include<stdio.h>
//함수의 원형 선언
long int fact(int);
void main()
{
int n, result;
printf("\n 정수를 입력하세요!! ");
scanf("%d", &n);
result = fact(n);
printf("\n\n %d의 factorial 값은 %1d입니다. \n", n, result);
getchar();
}
//long int 반환 int 받음
long int fact(int n)
{
int value;
//n이 1보다 작으면 종료
if (n<=1)
{
printf("\n fact(1)함수 호출!");
printf("\n fact(1)값 1반환 !!");
return 1;
//1보다 작을때 까지 실행
}else{
printf("\n fact(%d)함수 호출!", n);
//재귀호출
value = (n * fact(n-1));
printf("\n fact(%d)값 %1d 반환!!", n, value);
return value;
}
}
반응형
'프로그래밍' 카테고리의 다른 글
문자열 비교 확인 (0) | 2013.10.08 |
---|---|
피보나치 수열 (0) | 2013.10.08 |
구조체 화살표 연산자로 데이터 항목 참조하기 (0) | 2013.10.08 |
3차원 배열 입력과 출력 (0) | 2013.10.06 |
3차원 배열 확인 (0) | 2013.10.06 |