求1!+2!+3!+4!+5! int fac(int n) { int i,b=1; for(i=1;i<=n;i++) b=b*_____; return(b); } int main() { int i,s; s=0; for(i=1;i<=5;i++) s=s+______; printf("sum=%d\n",s); }
时间: 2024-04-28 20:18:41 浏览: 13
答案如下:
int fac(int n) {
int i,b=1;
for(i=1;i<=n;i++)
b=b*i; //填空处
return(b);
}
int main() {
int i,s;
s=0;
for(i=1;i<=5;i++)
s=s+fac(i); //填空处
printf("sum=%d\n",s);
}
解释:题目要求计算1!+2!+3!+4!+5!,因此需要先写一个求阶乘的函数fac,然后在main函数中调用该函数求出1到5的阶乘,并累加起来即可。具体实现方法是:在函数fac中使用循环计算阶乘,在main函数中使用循环调用fac函数并累加。
相关问题
求 Sn=1!+2!+3!+4!+5!+…+n!
这是一个求阶乘和的问题,可以使用循环结构和递归结构来实现。
使用循环结构的代码如下:
```c++
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int sum = 0;
int fac = 1;
for (int i = 1; i <= n; i++) {
fac *= i;
sum += fac;
}
cout << sum << endl;
return 0;
}
```
使用递归结构的代码如下:
```c++
#include <iostream>
using namespace std;
int factorial(int n) {
if (n == 1) {
return 1;
} else {
return n * factorial(n - 1);
}
}
int main() {
int n;
cin >> n;
int sum = 0;
for (int i = 1; i <= n; i++) {
sum += factorial(i);
}
cout << sum << endl;
return 0;
}
```
求1!+3!+5!+...+n!的和
以下是C语言程序设计中求1!+3!+5!+...+n!的和的代码:
```c
#include <stdio.h>
int main()
{
int n, i, j, sum = 0, fac = 1;
printf("请输入n的值:");
scanf("%d", &n);
for (i = 1; i <= n; i += 2) {
fac = 1;
for (j = 1; j <= i; j++) {
fac *= j;
}
sum += fac;
}
printf("1!+3!+5!+...+n!的和为:%d\n", sum);
return 0;
}
```
运行结果如下:
```
请输入n的值:5
1!+3!+5!+...+n!的和为:33
```