作者 usx程序设计类课程组
单位 绍兴文理学院
输入格式:
首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试数据输入一个正整数n(n≤12)。
输出格式:
对于每组测试,输出整数n的阶乘。
输入样例:
1
5
输出样例:
120
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
#include <stdio.h>
long int fact( int n )
{
long int fact = 1;
for( int i = 1; i <= n; i++ )//从1开始乘到n
{
fact = fact * i;
}
return fact;
}
int main()
{
int set;
long int n;//防止数据过大超出范围
scanf( "%d\n", &set );
while( scanf( "%d\n", &n ) != EOF )//测试数据有多组,处理到文件尾。
{
if ( n == 0 || n == 1 )//如果n是0或者1就令n等于1输出
{
n = 1;
}
else
{
n = fact(n);
}
printf( "%ld\n", n );
}
return 0;
}