题解 | #取近似值#
取近似值
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函数本身不具备强制类型转换的能力,需要显式的指明。

