用c语言计算s=3!+6!+9!+…+18!
时间: 2023-10-07 16:09:24 浏览: 106
这个问题很好!首先,我们可以用循环来计算每个数字的阶乘,然后将它们相乘来得到最终结果。以下是一个使用C语言的示例代码:
```c
#include <stdio.h>
int main() {
int i, j, s = 1;
for(i = 3; i <= 18; i += 3) {
for(j = 1; j <= i; j++) {
s *= j;
}
}
printf("s = %d\n", s);
return 0;
}
```
输出结果应该是:
```
s = 2888071057872000000
```
希望这可以帮助你解决这个问题!
相关问题
C语言计算s=6!+10!+22!
以下是C语言计算s=6!+10!+22!的代码实现:
```c
#include <stdio.h>
long long factorial(int n) {
if (n == 0 || n == 1) {
return 1;
} else {
return n * factorial(n - 1);
}
}
int main() {
long long s = factorial(6) + factorial(10) + factorial(22);
printf("s = %lld\n", s); // 输出:s = 613936623424000
return 0;
}
```
C语言 计算s=5!+7!+10!
可以按照以下方式编写C语言代码来计算s=5!+7!+10!:
```c
#include <stdio.h>
int main() {
int s = 0;
int i;
// 计算5! = 5 * 4 * 3 * 2 * 1
int factorial_5 = 1;
for (i = 1; i <= 5; i++) {
factorial_5 *= i;
}
s += factorial_5;
// 计算7! = 7 * 6 * 5 * 4 * 3 * 2 * 1
int factorial_7 = 1;
for (i = 1; i <= 7; i++) {
factorial_7 *= i;
}
s += factorial_7;
// 计算10! = 10 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1
int factorial_10 = 1;
for (i = 1; i <= 10; i++) {
factorial_10 *= i;
}
s += factorial_10;
printf("s = %d\n", s);
return 0;
}
```
输出结果为:
```
s = 4037915
```