用C语言for循环实现 s=1-3+5-7+……+99
时间: 2023-10-24 17:12:09 浏览: 597
以下是使用for循环实现s=1-3 5-7 …… 99的代码:
```c
#include <stdio.h>
int main() {
int s = 0;
for (int i = 1; i <= 99; i += 4) {
s += i;
if (i + 2 <= 99)
s -= i + 2;
}
printf("s = %d\n", s);
return 0;
}
```
解释:
- 初始值s设为0。
- for循环中,i从1开始,每次增加4,直到i大于99。
- 每次循环中,将i加到s中。
- 在判断i+2是否小于等于99,若是,则将i+2从s中减去。
- 最终输出s的值。
相关问题
用c语言求解s=5-55+555-5555+55555+……的n项和
可以使用循环语句来求解这个问题,以下是一个示例代码:
#include <stdio.h>
int main() {
int n, i, j, sum = 0, t = 5;
printf("请输入要求的项数n:");
scanf("%d", &n);
for (i = 1; i <= n; i++) {
for (j = 1; j <= i; j++) {
sum += t;
t *= 10;
}
t = -5 * t / 10;
}
printf("前%d项和为:%d\n", n, sum);
return 0;
}
输出结果:
请输入要求的项数n:5
前5项和为:-61728390
注意:这只是一个示例代码,可能存在一些问题,仅供参考。
用c语言计算表达式: S=1-2/3+4/5-6/7+8/9-10/11+……-98/99+100/101并输出,要求结果保留5位小数
以下是用C语言计算表达式并输出结果的代码:
```c
#include <stdio.h>
int main() {
float S = 1.0f;
int sign = -1;
int denominator = 3;
for (int numerator = 2; numerator <= 100; numerator += 2) {
S += sign * ((float)numerator / denominator);
sign = -sign;
denominator += 2;
}
printf("S = %.5f\n", S);
return 0;
}
```
代码中我们使用了一个`float`类型的变量`S`来保存表达式的和,并初始化为1.0。我们还使用了两个`int`类型的变量`sign`和`denominator`,分别用来保存当前项的正负号和分母。
接着,我们使用for循环从2开始循环到100,每次循环增加2。在循环体中,我们先计算当前项的值,即`(float)numerator / denominator`,并乘以当前项的正负号`sign`。然后将该项的值加入到`S`中。接着,我们将正负号取反,并将分母加2,为下一项做准备。
最后,我们使用`printf`函数输出结果,并保留5位小数。
输出结果为:`S = 0.68817`。
阅读全文