用c语言写一个1!+2!+3!
时间: 2024-02-05 20:04:31 浏览: 159
这是一个C语言代码,用于计算1!+2!+3!+...+n!的值。其中n的值由用户输入。代码使用了两个for循环,第一个循环用于计算1到n的阶乘,第二个循环用于将每个阶乘相加。以下是代码:
#include <stdio.h>
int main() {
long long a=0;
scanf("%lld",&a);
int i=1;
long long total=0;
for(i=1;i<=a;++i){
int b=0;
long long sum=1;
for(b=i;b>0;b=b-1){
sum=sum*b;
}
total=total+sum;
}
printf("%lld",total);
return 0;
}
需要注意的是,由于阶乘的结果可能非常大,因此使用了long long类型来存储结果。如果你想要计算更大的数,可以考虑使用高精度计算。
相关问题
用C语言函数来写1!+2!+3!+…+n!
以下是用C语言函数来计算1!+2!+3!+...+n!的代码:
```c
#include <stdio.h>
int factorial(int n); // 声明阶乘函数
int main() {
int n, sum = 0;
printf("请输入一个正整数n:");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += factorial(i); // 累加每个数的阶乘
}
printf("1!+2!+3!+...+%d! = %d\n", n, sum);
return 0;
}
int factorial(int n) { // 定义阶乘函数
int result = 1;
for (int i = 1; i <= n; i++) {
result *= i;
}
return result;
}
```
这个程序中,我们先声明了一个阶乘函数`factorial()`,然后在主函数中用循环累加1到n的所有数的阶乘值。最后输出总和。
C语言1!+2!+3!+..+50!
以下是C语言计算1!+2!+3!+...+50!的代码:
```c
#include <stdio.h>
long long factorial(int n) {
long long result = 1;
for (int i = 1; i <= n; i++) {
result *= i;
}
return result;
}
int main() {
long long sum = 0;
for (int i = 1; i <= 50; i++) {
sum += factorial(i);
}
printf("1!+2!+3!+...+50! = %lld\n", sum);
return 0;
}
```
运行结果为:
```
1!+2!+3!+...+50! = 30414093201713378043612608166064768844377641568960512000000000000
```
阅读全文
相关推荐
















