#include <iostream>
using namespace std;
int main() {
float a;
scanf("%f",&a);
int b =a;
if(abs(b-a)>=0.5)
{
if(a>=0)
b+=1;
else
b-=1;
}
printf("%d",b);
return 0;
}
思路:
1.明确C语言中float向int强制转换,只会保留整数,如16.8会变成16,-1.8会变成-1
2.理解“四舍五入”的含义,对于负数,-1.8需要变成-2。在数轴上可以更清晰地看到四舍五入的含义
3.舍去部分的绝对值超过0.5,对于正数,需要向右移动1格,对于负数,需要向左移动一格

京公网安备 11010502036488号