例题:
这种正负交替的运算有两种解决方式:
一:确定一个常数w=1,然后在每一次循环中使w=-w即可;
代码如下:
#include<stdio.h>
#include<math.h>
int main()
{
double s1,s2,n,i,w,sum=0;
scanf("%lf",&n);
s1=1;
s2=2;
w=1;
sum=s1/s2;
for(i=1;i<n;i++)
{
s1+=2;
s2+=2;
w=-w;
sum+=w*(s1/s2);
}
printf("%.2lf",sum);
return 0;
}
二:用数学函数pow函数
代码如下:
#include<stdio.h>
#include<math.h>
int main()
{
double x1,x2,n,i,sum=0;
scanf("%lf",&n);
for(x1=1,x2=2,i=1;i<=n;i++)
{
sum+=pow(-1,i-1)*x1/x2;
x1=x1+2;
x2=x2+2;
}
printf("%.2lf",sum);
return 0;
}