题解 | #取近似值#
取近似值
https://www.nowcoder.com/practice/3ab09737afb645cc82c35d56a5ce802a
#include <stdio.h> int main() { float num; scanf("%f",&num); if(((int)(num*10)%10)>=5) printf("%d\n",(int)(num+1)); else printf("%d\n",(int)num); return 0; }
由于只需要判断小数点后一位的情况,所以直接放大十倍之后使用取模判断即可;
在代码第7和第9行的地方,最开始没有使用强制类型转换,导致输出出错,
查阅printf函数相关之后发现,printf函数本身不具备强制类型转换的能力,需要显式的指明。