階乗
ループで階乗を求める
C
#include<stdio.h>
unsigned int factorial( unsigned int n)
{
unsigned int result = 1;
while(n != 0) result *= n, --n;
return result
}
int main( void )
{
int n;
printf("nを入力:");
scanf("%d", &n);
printf("%dの階乗は%d\n", n, factorial(n));
return 0;
}
再帰で階乗を求める
C
#include<stdio.h>
unsigned int factorial( unsigned int n)
{
return n == 0 ? 1 : n * factorial(n-1);
}
int main( void )
{
int n;
printf("nを入力:");
scanf("%d", &n);
printf("%dの階乗は%d\n", n, factorial(n));
return 0;
}
最終更新:2010年08月05日 23:04