#include
int main()
{
int sign;
double sum, d,i;
sign = 1;
sum = 0;
for (i = 0; i <= 99; i++);
{
d = sign *1/ (i + 1);
sum += d;
sign = -sign;
}
printf("%lf\n", sum);
return 0;
}
for (i = 0; i <= 99; i++);//分号删掉
d = sign *1.0/ (i + 1);//1改为1.0
主要问题在第8行,末尾多了 ';' 分号,修改如下,供参考:
#include<stdio.h>
int main()
{
int sign;
double sum, d, i;
sign = 1;
sum = 0;
for (i = 0; i <= 99; i++) //; 这行多了';'分号
{
d = sign * 1.0 / (i + 1); //sign *1/ (i + 1);修改
sum += d;
sign = -sign;
}
printf("%lf\n", sum);
return 0;
}
sign*1.0,浮点数整除,sign*1的话整数除整数会取整。
有帮助的话采纳一下哦!
#include<stdio.h>
int main()
{
int i=0;float sub=0;
for(i=1;i<=100;i++)//循环100次,也可写成i<101
{
if (i%2==0)//当i为偶数时,将它的负数分之一加起来
sub-=1.0/i;
else//当i不是偶数是,将它的分之一加起来
sub+=1.0/i;
}
printf("sub=%f\n",sub);
}