帮忙看一下这个程序哪里错了,为什么输入实数时运行的结果总是不对?
#include<stdio.h>void main()
{
float x,y;int t;
scanf("%f",&x);
if(x<1000) t=10;
else t=int(x)/1000;
switch(t)
{
case 0:y=0;break;
case 1:
case 2:
case 3:
case 4:y=0.02*x;break;
case 5:
case 6:
case 7:
case 8:
case 9:y=0.03*x;break;
case 10:y=0.05*x;break;
}
printf("货物价格为%f,税金为%f\n",x,y);
}
运行时,输入整数结果都是对的,但输入实数时就会出错了,为什么啊?