![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/dd165da6a344accaf800dcf80c0b7802.png)
这道题需注意正负数区分
方法一:
#include <stdio.h>
int main()
{
double a;
scanf("%lf",&a);
int b = a;
if(a>=0){
if((a-b)<0.5){
printf("%d",b);
}else{
printf("%d",b+1);
}
}
if(a<0){
if((a-b)>-0.5){
printf("%d",b);
}else{
printf("%d",b-1);
}
}
return 0;
}
方法二:
int main(){
double d;
scanf("%lf", &d);
if (d >= 0){
int a=d+0.5;
printf("%d\n",a);
}
else
{
int a=d-0.5;
printf("%d\n",a);
}
return 0;
}
第二种方法可以想象一个数轴来理解