解题思路:
注意事项:
注意输出数据的大小,有可能会超过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语言程序设计教程(第三版)课后习题6.11 (C语言代码)for循环浏览:1126 |
A+B for Input-Output Practice (C++代码)浏览:609 |
简单的a+b (C语言代码)浏览:573 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:507 |
母牛的故事 (C语言代码)浏览:1428 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:473 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:529 |
1118(求助_已解决)浏览:329 |
盐水的故事 (C语言代码)浏览:1528 |
杨辉三角 (C语言代码)浏览:679 |