c语言用函数编写:1-1/2+1/3-1/4.....+((-1)^(n+1))*(1/n)
答案:2 悬赏:30 手机版
解决时间 2021-11-10 01:19
- 提问者网友:感性作祟
- 2021-11-09 02:15
c语言用函数编写:1-1/2+1/3-1/4.....+((-1)^(n+1))*(1/n)
最佳答案
- 五星知识达人网友:酒安江南
- 2021-11-09 02:38
#include
double fun(int n);
main()
{ int x;
printf("Please enter x:");
scanf("%d",&x);
printf("%f\n",fun(x));
}
double fun (int n)
{ int i=1,t=1;
double s=0;
while(i<=n)
{s=s+t/i;//改成s=s+1.0*t/i;t和i都是int,所以t/i也是int
t=-t;
i++;}
return s;
}
double fun(int n);
main()
{ int x;
printf("Please enter x:");
scanf("%d",&x);
printf("%f\n",fun(x));
}
double fun (int n)
{ int i=1,t=1;
double s=0;
while(i<=n)
{s=s+t/i;//改成s=s+1.0*t/i;t和i都是int,所以t/i也是int
t=-t;
i++;}
return s;
}
全部回答
- 1楼网友:洒脱疯子
- 2021-11-09 02:48
main()函数没有返回值
在fun函数中做除法运算时要对操作数进行double类型强转,否则整数间除法会出错。得到的值不准确。
在fun函数中做除法运算时要对操作数进行double类型强转,否则整数间除法会出错。得到的值不准确。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯