在排列组合问题中经常需要计算阶乘。对于给定的整数n,求n的阶乘。

霸姨

关注

阅读 149

2022-08-02


输入


第一行有一个整数n(0<n<=20)表示测试用例的个数。其后的n行,每行一个整数k(0<k<=20)。


输出


对于每个整数n,每行输出n!

输入举例



2 5 20



输出举例


120 2432902008176640000



注意事项

建议使用64位整型 使用方法如下:
(1) Visual C++ 中64位整数类型用法:定义:__int64 n; 输入: scanf("%I64d",&n); 输出: printf("%I64d ",n);
(2) gcc,g++ 中64位整数类型用法:定义: long long n; 输入: scanf("%lld",&n); 输出: printf("%lld ",n);

本系统服务器采用的是gcc,g++编译器,因此提交时,应该采用第2种方式。

 

#include <stdio.h>
#include <stdlib.h>

int main()
{
long long jc=1;
int i,n,j,m;
scanf("%d",&n);
for(i=1;i<=n;i++){
scanf("%d",&m);
jc = 1;
for(j=1;j<=m;j++){
jc = j*jc;
}
printf("%lld\n",jc);
}

}

 

 

 

 

 

 

精彩评论(0)

0 0 举报