c语言 求e 用do-while
答案:4 悬赏:0 手机版
解决时间 2021-03-03 17:42
- 提问者网友:你挡着我发光了
- 2021-03-02 22:07
c语言 求e 用do-while
最佳答案
- 五星知识达人网友:白昼之月
- 2021-03-02 22:58
3个错误1:少C的头文件#include因为你用了printf函数;
2:i应该改成float型,因为m是float型,不改的话两个整形相除就取整数了,不如1/10的话结果是0;
3:m<0.00001改成m>0.00001,否则你输出的果是1了,因为m的初值就是1不满足循环条件,循环体只执行一次就停了。
我在调试的时候还会有一个警告,原因是没有写明返回值,所以还要加个void.
#include
#include
void main()
{float x=0,m=1;
int n=1;
float i=1;
do{
x=x+m;
i=i*n;
n++;
m=1/i;
}while(m>0.00001);
printf("x=%f\n",x);
}
我在Truboc上运行成功了
2:i应该改成float型,因为m是float型,不改的话两个整形相除就取整数了,不如1/10的话结果是0;
3:m<0.00001改成m>0.00001,否则你输出的果是1了,因为m的初值就是1不满足循环条件,循环体只执行一次就停了。
我在调试的时候还会有一个警告,原因是没有写明返回值,所以还要加个void.
#include
#include
void main()
{float x=0,m=1;
int n=1;
float i=1;
do{
x=x+m;
i=i*n;
n++;
m=1/i;
}while(m>0.00001);
printf("x=%f\n",x);
}
我在Truboc上运行成功了
全部回答
- 1楼网友:执傲
- 2021-03-03 00:48
你的M与X用DOUBLE表示吧...
- 2楼网友:杯酒困英雄
- 2021-03-03 00:42
m<0.00001 应该改为m>0.00001
- 3楼网友:蓝房子
- 2021-03-02 23:20
用m>0.00001控制吧
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯