第8楼的函数在运行时肯定会出错,因为main() 没有定义为void 类型,而main()函数又没有返回值,所以肯定会出错。
楼上各位都没考虑输入错误的情况,比如输入的重量为-1呢?我就借7楼的程序改一下吧。
#include <stdio.h>
void main()
{
float wapple,wpear,wbanana,worange;
printf("请输入苹果的重量\n");
scanf("%f",&wapple);
while(wapple<0)
{
printf("输入错误。");
printf("请输入苹果的重量\n");
scanf("%f",&wapple);
}
printf("请输入梨的重量\n");
scanf("%f",&wpear);
while(wpear<0)
{
printf("输入错误。");
printf("请输入梨的重量\n");
scanf("%f",&wpear);
}
printf("请输入香蕉的重量\n");
scanf("%f",&wbanana);
while(wbanana<0)
{
printf("输入错误。");
printf("请输入香蕉的重量\n");
scanf("%f",&wbanana);
}
printf("请输入橘子的重量\n");
scanf("%f",&worange);
while(worange<0)
{
printf("输入错误。");
printf("请输入橘子的重量\n");
scanf("%f",&worange);
}
float money1,money2,mchange;
money1=2.5*wapple+1.8*wpear+2.0*wbanana+1.5*worange;
printf("应付款为:%f\n",money1);
printf("顾客缴款为:");
scanf("%f",&money2);
mchange=money2-money1;
if (money2<money1)
printf("钱不够,应该再付%f",-mchange);
else
printf("应找款:%f\n",mchange);
}
如果不考虑出错,7楼的程序就可以了。