用c语言编写一个程序,输入整数n(n>1),求1!+2!+3!+…+n!并输出。
时间: 2023-09-30 16:08:40 浏览: 73
好的,以下是使用 C 语言实现的代码:
```c
#include <stdio.h>
int main() {
int n, i, j;
int result = 0;
int factorial = 1;
printf("请输入一个整数n(n>1):");
scanf("%d", &n);
for (i = 1; i <= n; i++) {
factorial = 1;
for (j = 1; j <= i; j++) {
factorial *= j;
}
result += factorial;
}
printf("1!+2!+3!+...+n!的值为:%d\n", result);
return 0;
}
```
和 Python 版本的思路类似,这个程序使用了两个循环,外层循环遍历 1 到 n,内层循环计算每个数的阶乘并累加到 result 中。需要注意的是,在内层循环计算完当前数的阶乘后,需要将 factorial 变量重置为 1,以便进行下一个数的计算。
输入整数可以使用 scanf 函数,输出结果可以使用 printf 函数。同样需要注意边界条件,比如 n<=1 的情况。
相关问题
用c语言编写程序 编写一个程序,输入整数n(n>1),求求1!+2!+3!+…+n!并输出。 【注意】输入和输出各占一行;运行效果应如下所示(第1行为输入,数据间用半角空格分隔,第2行为输出),格式错误算结果错误。 4 33
```c
#include <stdio.h>
int main() {
int n, i, j, res = 1; // res表示阶乘的结果
scanf("%d", &n); // 输入n
for (i = 1; i <= n; i++) { // 外层循环控制求n!,从1到n依次乘
for (j = 1; j <= i; j++) { // 内层循环控制乘数,从1到i依次乘
res *= j; // 每次乘积存入res中
}
}
printf("%d\n", res); // 输出结果
return 0;
}
```
C语言编写一个程序,输入整数n(n>1),求1!+2!+3!+…+n!并输出。 【注意】输入和输出各占一行;运行效果应如下所示(第1行为输入,数据间用半角空格分隔,第2行为输出),格式错误算结果错误。 4 33
好的,以下是您需要的C语言程序代码:
```c
#include <stdio.h>
int main() {
int n, i, j, sum = 0, fac = 1;
scanf("%d", &n);
for (i = 1; i <= n; i++) {
fac = 1;
for (j = 1; j <= i; j++)
fac *= j;
sum += fac;
}
printf("%d", sum);
return 0;
}
```
输入 `4` 后,程序会输出 `33`。
阅读全文