Description
筒子想求出若干个数每个数的阶乘,请你帮他吧!
Input
若干数N(0<=N<=20)
Output
每个数的阶乘
Sample Input 1
1
2
3Sample Output 1
1
2
6
阶乘本来很容易实现,但是多组数的阶乘纠结了一会,其实这就回到了多组输入输出的问题,利用文件结束标志EOF将判断条件设为scanf("%d",&n)!=EOF
就OK了。
还有一个就是要注意,因为是计算多组数的阶乘,所以在每次计算一个n的阶乘之前,都要把s重新赋为1,切记!!!
#include <stdio.h>
int main(){
int n,i;
long s=1;
while(scanf("%d",&n)!=EOF){
if(n<=1){
s=1;
printf("%ld\n",s);
}
else{
s=1;//将s重新赋为1
for(i=1;i<=n;i++){
s*=i;
}
printf("%ld\n",s);
}
}
return 0;
}
来源:CSDN
作者:ChanCherry min
链接:https://blog.csdn.net/ITmincherry/article/details/104110481