解题思路:如下,进行两次循环,分别求和与求对应数字的阶乘。
注意事项:写在代码中吧。
参考代码:
#include <stdio.h>
int main() {
int i,j,n;
long long ture,sum=0;//当输入的数字变大,阶乘会比较大,所以这里阶乘与累加和都定义为long long
scanf("%d",&n);
for(i=n;i>=1;i--){ //第一层循环是为了进行n次循环,累加n次
ture=1; //这里稍微注意一下,外层循环每次进行时,需要将ture重新赋值
for(j=1;j<=i;j++){ //内层循环是为了求对应数字的阶乘,例如你输入5,第一次j=5,第二次j=4,依次递减,每个数字的阶乘求出后,在下面进行累加
ture*=j;
}
sum+=ture;
}
printf("%lld",sum); //这里输出要用%lld
return 0;
}
0.0分
1 人评分
简单编码 (C++代码)(这里推荐用switch)浏览:959 |
2005年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:490 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:470 |
【明明的随机数】 (C++代码)浏览:779 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:742 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:537 |
小九九 (C语言描述,不看要求真坑爹)浏览:984 |
DNA (C语言代码)浏览:735 |
链表数据求和操作 (C语言代码)浏览:941 |
拆分位数 (C语言代码)浏览:514 |