这是我编写的一个程序:
#include "conio.h"
double fun(float x)
{
float sum;
if(x<-1.00)
sum=x*x-1.00;
else if(x>1.00)
sum=x*x+1.00;
else
sum=x*x;
return sum;
}
main()
{
float x;
double a;
scanf("%f",&x);
a=fun(x);
printf("sum=%f",a);
getch();
}
这样输出结果是正确地
但是为什么我把float x 改成 double x
输出结果就是0.00000呢??
不是很明白为什么改了就可以呢??