c语言分数求和 作业内容 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值,打印出结果
时间: 2023-11-29 11:47:36 浏览: 97
以下是C语言实现分数求和的代码和解释:
```c
#include <stdio.h>
#include <math.h>
int main() {
int i;
double sum = 0.0;
int sign = 1;
for (i = 1; i <= 100; i++) {
sum += sign * 1.0 / i;
sign = -sign;
}
printf("%lf", sum);
return 0;
}
```
解释:
1. 首先定义一个变量`sum`用于存储求和的结果,初始值为0.0,因为后面要进行浮点数的计算。
2. 定义一个变量`sign`用于记录正负号,初始值为1,因为第一项是正数。
3. 使用for循环遍历1到100,每次循环都进行以下操作:
- 将当前项的值加到`sum`中,注意要将1.0转换为浮点数,否则会进行整数除法。
- 将`sign`取反,以便下一次循环时加上相反的数。
4. 最后输出`sum`的值即可。
相关问题
c语言编程 求和:s=1/(1*3)-1/(3*5)+1/(5*7)-……-1/(99*101)
```c
#include <stdio.h>
int main() {
double s = 0.0;
int i, j;
for (i = 1, j = 3; j <= 101; i += 2, j += 2) {
s += 1.0 / (i * j);
s -= 1.0 / (j * (j + 2));
}
printf("s = %f", s);
return 0;
}
```
解释:使用两个变量 i 和 j 分别表示分数的分母,每次循环加上一个分数,再减去下一个分数,直到 j 超过 101。注意分母是连续的奇数,而分数的符号是交替的加减。最后输出求和结果 s。
C语言中计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值,打印出结果
在C语言中,你可以使用循环和分数相加的概念来计算这个序列的和。由于这是一个交错正负的求和,即奇数项为正、偶数项为负,我们可以创建两个变量分别存储正序和负序的和,然后交替累加。
下面是一个简单的示例程序:
```c
#include <stdio.h>
int main() {
double positive_sum = 0, negative_sum = 0; // 初始化正序和负序和为0
int i;
for (i = 1; i <= 100; i++) {
if (i % 2 == 1) { // 如果是奇数
positive_sum += 1.0 / i;
} else { // 如果是偶数
negative_sum += -1.0 / i; // 注意这里是减法,因为偶数项为负
}
}
// 最终结果是正序和加上负序和
double result = positive_sum + negative_sum;
printf("The sum is: %.2f\n", result); // 打印结果,保留两位小数
return 0;
}
```
当你运行这个程序,它会打印出1到100之间这个序列的和。
阅读全文