C语言1!+2!+n!
时间: 2023-11-28 09:46:08 浏览: 37
要计算1!+2!+n!,需要使用循环和阶乘计算。以下是C语言的代码实现:
```c
#include <stdio.h>
int main() {
int i = 0; // 外循环
int j = 0; // 内循环
int n = 0; // 输入n
int ret = 1; // 把每个数的阶乘计算后赋值给该变量,因为0乘任何数都为0,所以初始化为1。
int sum = 0; // 外循环后将各个数的阶乘相加后赋值给该值,作为最终结果。
// 输入:
scanf("%d", &n); // 记得使用取地址符:&
// 计算阶乘和:
for (i = 1; i <= n; i++) {
ret = 1;
for (j = 1; j <= i; j++) {
ret *= j;
}
sum += ret;
}
// 输出结果:
printf("%d\n", sum);
return 0;
}
```
相关问题
C语言求1!+2!+……+n!
编写一个函数fun,用于计算1!+2!+3!+ …… +n!的和。在main函数中,从键盘输入n值,并输出运算结果。下面是fun函数的代码实现:
```c
int fun(int n) {
int sum = 0;
int i, j, temp;
for (i = 1; i <= n; i++) {
temp = 1;
for (j = 1; j <= i; j++) {
temp *= j;
}
sum += temp;
}
return sum;
}
```
在main函数中,我们可以这样调用fun函数:
```c
int main() {
int n, result;
printf("请输入n的值:");
scanf("%d", &n);
result = fun(n);
printf("1!+2!+3!+...+n!的和为:%d\n", result);
return 0;
}
```
c语言1!+2!+3!
题目要求计算1!+2!+3!+...,其中“!”表示阶乘。下面是两种C语言的实现方法:
方法一:
```
#include <stdio.h>
int main(){
int sum=0,s=1,n,i;
scanf("%d",&n);
for(i=1;i<=n;i++){
s=s*i;
sum=sum+s;
}
printf("%d",sum);
}
```
方法二:
```
#include <stdio.h>
int main(){
int i,j,N,sum=0,sum1;
scanf("%d",&N);
for(i=1;i<=N;i++){
sum1=1;
for(j=1;j<=i;j++){
sum1=sum1*j;
}
sum+=sum1;
}
printf("%d",sum);
}
```
方法一中,我们使用了一个累乘器s来获得每个数的阶乘结果,然后将所有阶乘结果相加得到最终结果。方法二中,我们使用了两个循环,外循环用来遍历每个数,内循环用来求每个数的阶乘结果,然后将所有阶乘结果相加得到最终结果。