반응형
재귀함수, 순환호출이라 표현하시는 분도 계시는거 같든데 아무튼...
반복문을 사용하지 않고 대신 재귀함수를 이용해서 n!을 구해보고자 합니다.
요구사항
함수의 원형이 int factorial(int n);인 n!(팩토리얼)을 구하는 재귀 함수를 정의하여 사용
자가 입력한 임의의 양의 정수 n에 대해 n!을 구하는 프로그램을 작성하시오. n! = 1 ×
2 × 3 × … × n이다.
[힌트] n!은 일단 (n-1)!을 구한 후 여기에 n을 곱한 값이다.
n!.
5!을 예로들면
5*4*3*2*1 의 결과가 답이 됩니다.
#include <stdio.h>
int factorial(int n);
int factorial(int n)
{
if(n<=1) return 1;
return n*factorial(n-1);
}
int main()
{
int n;
scanf("%d",&n);
printf("%d",factorial(n));
return 0;
}
@ 결과
반응형
'지식in > c언어 관련' 카테고리의 다른 글
c언어 파일입출력이용 프로그램실행횟수 카운팅 (0) | 2013.12.07 |
---|---|
c언어 main.c, sub_01.c, sub_02.c, user_header.c (0) | 2013.11.29 |
c언어 구구단 사용자가 원하는 단 출력, y/n (0) | 2013.11.27 |