系统显示两个错误,其实都是指向max的申明问题的。如下:
在main函数中使用了max,但是max没有事先申明。C语言规定用户自定义的变量和函数都需要事先申明。修改方法是:在main函数之前申明max函数
max(float x,float y);
修改编译后错误消失:
2.现在只有两个警告,第一个警告是说明main函数应该有无类型返回值,这个的修改只需要在main前加上void就可以了。
3.程序中还有一个警告。注意在main函数中c是一个int类型的变量,但是max函数返回了一个float类型的值,把一个float类型的值赋值给int类型的变量会有精度损失。所以将max函数返回值类型修改为float,c也修改为float。注意:main前的申明语句也要修改。
另外,注意一点:由于精度问题,当两个非常相似的float数据比较时可能会有错误的结果。所以float数剧的比较,常常设置精度进行比较。
例如:if (x-y)>0.001 then return x
else return y