SPOJ-小因子

http://www.spoj.com/problems/FCTRL2/
我的代码显示了Spoj中的编译错误,尽管在我的编译器中运行准确。
** IDE – 代码块**

int cal(int ); int main() { int i,t; int n[100]; scanf("%d",&t); for(i=0;i<t;i++) { scanf("%d",&n[i]); } for(i=0;i=1;j--) { a=a*j; } return a; } 

printfscanf未定义。 您需要包含stdio库。

我在本地收到此错误:

 test.c: In function 'main': test.c:8:9: warning: incompatible implicit declaration of built-in function 'scanf' scanf("%d",&t); ^ test.c:16:16: warning: incompatible implicit declaration of built-in function 'printf' printf("%d",cal(n[i])); ^ 

对于每个整数输入,您必须计算阶乘。 这在python或java等语言中非常简单,它们内置了对大整数类型的支持。 虽然它为使用C / C ++的人或没有内置biginteger类型的语言提供了艰难的时间。

现在,可以存储在无符号32位整数中的最大数量是2 ^ 32 – 1,而无符号64位整数中的最大数量是2 ^ 64 – 1.类似于100! 有超过150个十进制数字。 前面提到的数据类型可以存储分别具有最多9位和19位十进制数字的数字。 因此,您需要找到一种方法来存储我们将获得的150多个数字作为答案。 考虑使用数组来存储每个小数。