解题思路:1.如何处理每个数的阶乘
2.如何将每个阶乘按照自己输入的个数相加。
3.处理好count(自己输入的阶乘个数)零和非零(我承认我没有处理好,所以就用了个if语句)。
最外面的for循环是阶乘的相加,里面的for循环是求每一个阶乘,因为要用到sum这个变量,所以每次使用过后要再定义为1(好麻烦嗷)。
注意事项:
1.定义变量的最大值(我刚开始一直报错,但是结果都是对的,就很疑惑,后来发现是自己的IDE太宽容了超出范围好像还能用,记得要用ld)。
2.相加求和的量要定义初始值为0;相乘的量要定义初始值为1。
参考代码:
#include int main() { long int n,sum=1,count=0,sum1=0,i; scanf("%d",&count); for(n=1;n0;i--) { sum*=i; } sum1+=sum; sum=1; } if(count==0) printf("0"); else printf("%ld",sum1); return 0; }
0.0分
4 人评分
C语言程序设计教程(第三版)课后习题12.2 (C语言代码)浏览:804 |
C语言训练-列出最简真分数序列* (C语言代码)浏览:500 |
C语言训练-斐波纳契数列 (C语言代码)浏览:1160 |
用筛法求之N内的素数。 (C语言代码)浏览:646 |
完数 (C语言代码)浏览:684 |
C语言训练-数字母 (C语言代码)浏览:600 |
C语言程序设计教程(第三版)课后习题10.1 (C语言代码)浏览:530 |
永远的丰碑 (C语言代码)浏览:516 |
简单的a+b (C语言代码)浏览:818 |
敲七 (C++代码)浏览:1049 |