用c语言计算S=1+3+5+7+999的和的程序用while函数
时间: 2023-12-19 22:04:09 浏览: 129
以下是用 C 语言计算 S=1+3+5+7+...+999 的和的程序,使用了 while 循环:
```c
#include <stdio.h>
int main() {
int sum = 0, i = 1;
while (i <= 999) {
sum += i;
i += 2;
}
printf("S = %d\n", sum);
return 0;
}
```
代码解释:
1. 定义变量 `sum` 表示累加和,初始值设为 0,变量 `i` 表示当前累加的数,初始值设为 1。
2. 在 while 循环中,每次将当前累加的数加到 `sum` 变量中,然后将 `i` 增加 2,以便下一轮累加下一个奇数。
3. 当 `i` 的值大于 999 时,循环结束。
4. 最后输出累加和 `sum` 的值。
执行结果:
```
S = 250000
```
相关问题
用c语言计算S=1!+4!+7!+10!+…n!
以下是用C语言计算S=1!+4!+7!+10!+…n!的代码和解释:
```c
#include <stdio.h>
// 定义一个函数,用于计算阶乘
int factorial(int n) {
int result = 1;
for (int i = 1; i <= n; i++) {
result *= i;
}
return result;
}
int main() {
int n = 10; // 假设n为10
int sum = 0;
int i = 1;
while (i <= n) {
sum += factorial(i); // 求i的阶乘并加到sum中
i += 3; // i每次加3
}
printf("S = %d", sum); // 输出结果
return 0;
}
```
代码解释:
1. 首先定义了一个函数`factorial`,用于计算阶乘。
2. 在`main`函数中,定义了变量`n`表示要计算到的阶乘的最大值,这里假设为10。
3. 定义变量`sum`表示最终的结果,初始化为0。
4. 定义变量`i`表示当前要计算阶乘的数,初始化为1。
5. 使用`while`循环,每次计算`i`的阶乘并加到`sum`中,然后将`i`加3,直到`i`大于`n`为止。
6. 最后输出结果。
计算编写c语言计算n!并调用该函数计算s=1+1/(1+4!)+1/(1+4!+7!)+…+1/(1+4!+7!+…+19!)
以下是C语言计算n!并调用该函数计算s=1+1/(1+4!)+1/(1+4!+7!)+…+1/(1+4!+7!+…+19!)的代码实现:
```c
#include <stdio.h>
double factorial(int n) {
double result = 1.0;
for (int i = 1; i <= n; i++) {
result *= i;
}
return result;
}
double calculateS() {
double s = 0.0;
int n = 1;
double denominator = 1.0;
while (n <= 5) {
denominator *= factorial(3 * n - 2);
s += 1.0 / (1 + denominator);
n++;
}
return s;
}
int main() {
double s = calculateS();
printf("s is %f\n", s);
return 0;
}
```
阅读全文