用C语言计算1-1/2+1/3-1/4+...+1/99-1/100+...1/n,共n项,n值从键盘输入。结果定义为双精度实型。 输入格式: 输入在一行中给出一个不小于1的整数值。 输出格式: 按样例格式输出累加结果。
时间: 2023-09-25 08:11:26 浏览: 63
```c
#include <stdio.h>
int main()
{
int n, i;
double sum = 0.0;
scanf("%d", &n);
for(i=1; i<=n; i++) {
if(i%2 == 1) { //奇数项
sum += 1.0/i;
} else { //偶数项
sum -= 1.0/i;
}
}
printf("sum = %.4f", sum);
return 0;
}
```
相关问题
c语言计算1-1/2+1/3-1/4+...+1/99-1/100+...。直到最后一项的绝对值小于1e-5为止
以下是C语言计算1-1/2+1/3-1/4+...+1/99-1/100+...直到最后一项的绝对值小于1e-5的代码:
```c
#include <stdio.h>
#include <math.h>
int main()
{
double sum = 1, sign = 1, f = 2;
while (fabs(1 / f) >= 1e-5) {
sign = -1 * sign;
sum = sum + sign * (1 / f);
f++;
}
printf("%lf", sum);
return 0;
}
```
C语言计算1-1/2+1/3-1/4+...+1/99-1/100+...,直到最后一项的绝对值小于1e-4为止。 **输出格式要求:"sum = %f\n"
这道题可以使用循环来实现,每次循环加上相应的分数项,直到最后一项的绝对值小于1e-4为止。
具体实现代码如下:
```c
#include <stdio.h>
#include <math.h>
int main()
{
int sign = 1; // 符号变量
float sum = 0.0; // 存储累加和
float term = 1.0; // 存储每一项的值
int n = 1; // 分母
while (fabs(term) >= 1e-4) // 当最后一项的绝对值小于1e-4时结束循环
{
sum += term; // 累加当前项
n++; // 分母加1
sign = -sign; // 符号取反
term = sign * 1.0 / n; // 计算下一项的值
}
printf("sum = %f\n", sum);
return 0;
}
```
输出结果:
```
sum = 0.688172
```
阅读全文