解题思路:
注意事项:
注意输出数据的大小,有可能会超过int 的限制
参考代码:
#include <stdio.h>
//using namespace std;
//#define LINT64 (long)
long proc(int a);
long Process(int a);
int main()
{
int a;
long b;
scanf("%d",&a);
b = Process(a);
printf("%lld\n",b);
return 1;
}
long Process(int a)
{
int i;
long sum = 0;
if((a<0) || (a>20))
{
return 0;
}
if(a==1)
{
return 1;
}
for(i=1; i<=a;i++)
{
sum += proc(i);
}
return sum;
}
long proc(int a)
{
if(a==1)
{
return 1;
}
else
{
return a*(proc(a-1));
}
}
0.0分
1 人评分
C二级辅导-等差数列 (C语言代码)浏览:626 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:699 |
拆分位数 (C语言代码)浏览:1357 |
WU-输出九九乘法表 (C++代码)浏览:1846 |
C语言程序设计教程(第三版)课后习题9.1 (C语言代码)浏览:707 |
1642题解浏览:780 |
K-进制数 (C语言描述,蓝桥杯)浏览:950 |
蚂蚁感冒 (C语言代码)浏览:814 |
字符串比较 (C语言代码)浏览:769 |
1197求助浏览:666 |