float:单精度浮点型 %f
double:双精度浮点型 %lf
scanf输入时:
double型如果用了%f 会缩短字节,导致输入值被截断可能就不是你想要输入的那个值了
float型用了%lf 底层逻辑:计算机会读取后八字节的内存 这些内存里也许并不是数字 可能会引起程序崩溃
printf 输出时:
float型用%lf 会导致输出精度变大
double型用%f 会导致输出位数被截断 会导致输出错误
float:单精度浮点型 %f
double:双精度浮点型 %lf
scanf输入时:
double型如果用了%f 会缩短字节,导致输入值被截断可能就不是你想要输入的那个值了
float型用了%lf 底层逻辑:计算机会读取后八字节的内存 这些内存里也许并不是数字 可能会引起程序崩溃
printf 输出时:
float型用%lf 会导致输出精度变大
double型用%f 会导致输出位数被截断 会导致输出错误