scanf()用%lf 来接受double类型
printf()用 %f 输出double 类型
原因:
printf的% f 说明符的确可以输出float类型也可以 输出double 类型 。根据“ 默认参数提升” 规则,float 型会被提升为double 类型。
对于scanf ,它接受指针,没有类似 的类型提升。(通过指针)向float 存储和double存储大不一样,
所以,scanf 区别%f 和% l f。
scanf()用%lf 来接受double类型
printf()用 %f 输出double 类型
原因:
printf的% f 说明符的确可以输出float类型也可以 输出double 类型 。根据“ 默认参数提升” 规则,float 型会被提升为double 类型。
对于scanf ,它接受指针,没有类似 的类型提升。(通过指针)向float 存储和double存储大不一样,
所以,scanf 区别%f 和% l f。