十六筒 发表于 2021-3-24 14:31:27

求助大佬!!!题目如图!!

#include <stdio.h>
#include <math.h>
int main()
{
      int i=1;
      double x,sum=0.0;
      while(fabs(x=1.0/i)>=1.0e-5)
      {
                sum+=x;
                i++;
                i=-i;
      }
      printf("%f\n",sum);
      return 0;
}
大佬们看一下我这个程序哪里错了啊!!谢谢!!{:10_254:} {:10_254:}

jackz007 发表于 2021-3-24 14:53:08

本帖最后由 jackz007 于 2021-3-24 14:57 编辑

       当 i 为 -1 时, i ++ = ?
#include <stdio.h>

int main(void)
{
      int e , i                   ;
      double s                  ;
      for(s = 0.0 , e = i = 1 ; i < 100001 ; i ++) {
                s += 1.0 * e / i    ;
                e = -e            ;
      }
      printf("%lf\n" , s)         ;
}
      编译、运行实况
D:\0002.Exercise\C>g++ -o x x.c

D:\0002.Exercise\C>x
0.693142

D:\0002.Exercise\C>

十六筒 发表于 2021-3-24 17:03:39

jackz007 发表于 2021-3-24 14:53
当 i 为 -1 时, i ++ = ?

      编译、运行实况

大佬 我终于弄出来了,我是用的while 来做的,这种应该行吧{:10_266:}
#include <stdio.h>
#include <math.h>
int main()
{
        double x=1,sum=0,i=1,j=1;
        while(fabs(1/i)>=1.0e-5)
        {
                x=j*1/i;
                sum+=x;
                j=-j;
                i++;
        }
        printf("%lf\n",sum);
        return 0;
}
页: [1]
查看完整版本: 求助大佬!!!题目如图!!