TC2.0中的fabs是什么意思?
#include "stdio.h"
main()
{float x,y,z;
clrscr();
/*scanf("%f%f",&x,&y);*/
x=3.6;y=2.4;
z=x/y;
while(1)
{if (fabs(z)>0.1)
{x=y;y=z;z=x/y;
}
else break;
}
printf("y=%f\n",y);
getch();
}
以上的程序进行的结果是2.400000,真是想不通为什么会等于2.4?
如果给它加上#include "math.h"
那么运行结果就成了17.572384,调试结论是fabs的含义是关键,如果加上math.h这个头文件,而它表示返回浮点数的绝对值,那么如果没有这个头文件呢?表示什么含义?
更奇的是,如果x,y的值改用scanf来输入,如下所示,则结果就变为1.5!怎么回事啊?
#include "stdio.h"
main()
{float x,y,z;
clrscr();
scanf("%f%f",&x,&y);
/*x=3.6;y=2.4; */
z=x/y;
while(1)
{if (fabs(z)>0.1)
{x=y;y=z;z=x/y;
}
else break;
}
printf("y=%f\n",y);
getch();
}