本文共 607 字,大约阅读时间需要 2 分钟。
首先明确一下n的阶乘:
n!=123*4…n#define _CRT_SECURE_NO_WARNINGS#includeint main(){ int n = 0; int i = 1; int M = 1; scanf("请输入n的值%d", &n); while (i <= n) { M = M*i; ++i; } printf("%d\n", M); return 0;}
要算1!+2!+3!…+10!只需要在上述代码中再加入一层循环控制每个阶乘数之和即可。
#includeint main(){ int N = 0; int a = 10; for (a = 10; a >= 1;a=a-1) { int i = 1; int D = 0; int M = 1;//再次将i重置为1,D重置为0,M重置为1 while (i <= a) { M = M*i; ++i; D = M;//将每次算的阶乘放入D中,然后再次进入for循环时重置D=0 } N = N + D;//将每一个阶乘相加 } printf("%d\n", N); return 0;}
总结:我们要解1!+2!+3!…+10!时,要先把问题分解,再将每一部分串起来,思路就会清晰很多。
转载地址:http://lklo.baihongyu.com/