#include<stdio.h>
int main()
{
int N;
scanf("%d",&N);
double number,sum;
int a=1;
for(int i=1;i<=N;i++)
{
number=a*i*1.0/(i*2-1);
sum+=number;
a=-a;
}
printf("%.3lf\n",sum);
return 0;
}
问题在于“交错”要怎么处理,一正一负也是一种循环,所以令a=1,在for循环中a=-a来实现。
注意:分母要么是1.0/ ,要么是还要再除以一个1.0,不然结果就不对了。在c中“ / ”返回的是最大整数。
运行结果为: