C语言求1/100+2/99+…+1的值
时间: 2023-12-04 10:04:09 浏览: 40
这道题目可以使用循环来实现。以下是两种不同的方法:
方法一:
```
#include<stdio.h>
int main() {
int i = 0;
double num = 0.0;
double sum = 0.0;//使用双精度浮点类型的数据
for (i = 1; i <= 100; i++) {
num = 1.0 / i;
sum = num + sum;
}
printf("%lf", sum);
return 0;
}
```
方法二:
```
#include<stdio.h>
int main() {
int i = 1;
double ret = 0.0;
for (int n = 1; n <= 100; n++) {
ret += i *1.0/ n;//1.0很有必要,否则计算出来的默认值是int类型的
i = -i;
}
printf("最终结果是:%lf", ret);
return 0;
}
```
还有一种方法是根据分母的奇偶性来判断加减,以下是代码:
```
#include<stdio.h>
int main() {
int i = 1;
double ret = 0.0;
for (int n = 1; n <= 100; n++) {
if (n % 2 == 1) ret = ret + (1.0 / n);
else ret = ret - (1.0 / n);
}
printf("最终结果是:%lf", ret);
return 0;
}
```