应该是对的啊,修改了好多次,但运行出来总是不对,不知道是哪里的问题😱
2条回答 默认 最新
- 梦里逆天 2022-09-03 11:41关注
求一个数的阶乘的函数应该是这么写的:
int fact(int n) { int ans = 1; for(int i=1; i<=n; i++) { ans *= i; } return ans; }
所以你要把int s = 1放在for循环里面,不然就加多了。1到10的阶乘之和应该是:4037913
#include <stdio.h> int main() { int sum = 0; for(int i=1; i<=10; i++) { int s = 1; for(int j=1; j<=i; j++) { s *= j; } sum += s; } printf("%d\n", sum); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用 1