main()
{double x;
scanf("%f",&x); //%f应该为:%lf
printf("%f",x); //%f应该为:%lf
}
因为x为double型双精度类型,所以输入与输出都应该用%lf才对,而不应该用%f.当x为单精度类型时即float时才用%f.
#include
int main()
{double x;
scanf("%lf",&x);
printf("%lf",x);///////double 是lf lf lf
return 0;
}
scanf("%f",&x); //%f应该为:%lf
printf("%f",x); //%f应该为:%lf
问题在于double哦,它是float所占空间的两倍,当你一个double的数用float的形式表示它就超了,所就不能正常显示了,把double改为float
double x