求助float和double的区别?
#include<stdio.h>#define num1 1.6093
main()
{
printf("Please input kilomenters:");
double kilometer,a;
scanf("%f",&kilometer);
a=kilometer/num1;
printf("mile=%f\n",a);
}
运行此程序时,结果是一对负数。而将kilometer和a定义为float形时则显示正确结果,为什么会这样? float double本质不就是精度不同么