求1/1-1/2+1/3-1/4……+1/100问题

本人初学,还望高人高抬贵手指点一番

img


按照我的想法应该是这样执行,但是最后出来的结果是-1,我觉得可能是循环求和错了,但又不知道怎么改,求指点!😭😭

题主考虑的太复杂了,这么写,供参考:

#include <stdio.h>
int main()
{
    int    i;
    double s = 0;
    for (i = 1; i <= 100; i++)
         i % 2 ? s += 1.0 / i : s -= 1.0 / i;
    printf("S = %f", s);
    return 0;
}

for里面的a初始化好像应该是0

int m=0;
修改为
double m=0;

m=1/i;
修改为
m=1.0/i;
否则是整除,永远是0

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^