说明:
填写程序中的空格,不要更改与输入和输出相关的语句。
输入正整数重复(0<重复<10),并重复以下操作的次数:
读入正实数eps,计算1-1/3+1/5-1/7+……,直到最后一项的绝对值小于eps(保留小数点后6位)
Input
2 (repeat=2)
1E-4
0.1
Output
0.785348
0.834921
#include <stdio.h>
#include <math.h>
int main( )
{
int ri, repeat;
int temp, flag;
double eps, item, sum;
scanf("%d", &repeat);
for(ri=1; ri<=repeat; ri++){
scanf("%le", &eps);
/*---------*/
printf("%.6f\n", sum);
}
}
定义sum的时候要初始化为0,
sum+= pow(-1,ri-1)/(2*ri-1);
sum = 1;
flag = -1;
item = 1;
temp = 1;
while(fabs(item) > eps)
{
item = flag/(temp*2.0+1);
sum += item;
temp++;
flag *= -1;
}
11行改为scanf("%e",&eps);