本关任务:编写一个程序,任意输入n
,求S=1!+2!+...+n!
。 注意:n!
表示n
的阶乘。0
的阶乘等于1
,负数的阶乘等于0
。
*提示:(n+1)!=n!(n+1)** 例如:
输入:10
输出:4037913
输入:7
输出:5913
输入:-1
输出:0
编程要求
本关的编程任务是补全右侧代码片段中Begin
至End
中间的代码,具体要求如下:
编程实现:任意输入n
,求S=1!+2!+...+n!
。 注意:n!表示n的阶乘。0的阶乘等于1,负数的阶乘等于0。
本关涉及的代码文件的代码框架如下:
#include <stdio.h>
// 定义main函数
int main()
{
// 请在此添加代码
/********** Begin *********/
/********** End **********/
return 0;
}
测试说明
以下是测试样例:
输入:
10
输出:4037913
输入:1
输出:1
输入:-5
输出:0
#include<stdio.h> int main(void) { int i,j,n; int sum=0,pro=1; scanf("%d",&n); if(n > 0) { for(i=1;i<=n;i++) { for(j=i;j<=i;j++) { pro*=j; } sum += pro; } } else if(n == 0) { sum = 1; } else sum = 0; printf("%d",sum); return 0; }