c语言用迭代法求平方根我的程序错在哪,为什么不能输出结果#include#includeint main(){\x05int b,a,c;\x05scanf("%d",&a);\x05b=1,c=0;\x05for(;abs(b-c)>=1e-5;)\x05{\x05 c=1/2*(b+a/b);\x05 b=1/2*(c+a/c);\x05}\x05printf("%d,%d",c,b);\
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/16 05:30:36
c语言用迭代法求平方根我的程序错在哪,为什么不能输出结果#include#includeint main(){\x05int b,a,c;\x05scanf("%d",&a);\x05b=1,c=0;\x05for(;abs(b-c)>=1e-5;)\x05{\x05 c=1/2*(b+a/b);\x05 b=1/2*(c+a/c);\x05}\x05printf("%d,%d",c,b);\
c语言用迭代法求平方根
我的程序错在哪,为什么不能输出结果
#include
#include
int main()
{
\x05int b,a,c;
\x05scanf("%d",&a);
\x05b=1,c=0;
\x05for(;abs(b-c)>=1e-5;)
\x05{
\x05 c=1/2*(b+a/b);
\x05 b=1/2*(c+a/c);
\x05}
\x05printf("%d,%d",c,b);
\x05return 0;
\x05}
c语言用迭代法求平方根我的程序错在哪,为什么不能输出结果#include#includeint main(){\x05int b,a,c;\x05scanf("%d",&a);\x05b=1,c=0;\x05for(;abs(b-c)>=1e-5;)\x05{\x05 c=1/2*(b+a/b);\x05 b=1/2*(c+a/c);\x05}\x05printf("%d,%d",c,b);\
三个错误:
1.不能用int型定义,用double型.
2.没有abs这么个语句,应该是fabs.
3.for循环中应该是 c=1.0/2*(b+a*1.0/b);
b=1.0/2*(c+a*1.0/c);
而不是 c=1/2*(b+a/b);
b=1/2*(c+a/c);
因为a,b,c都是实型了前面当然不能用整型.
然后再试试吧