round函数的C语言代码怎么写?

用C语言编写round函数,本人的C语言的math库不能用了,想自己写个round函数

首先判断这个数是正数还是负数,然后是整数的话,看小数位是否大于0.5,是的话,就把整数部分加1,然后取整数部分,否则直接取整数部分;负数的处理类似。

int round(double );
返回距离参数最近的整数,如果参数值正好在两个整数的中间位置,则返回距离0较远的那一个整数(即正数则返回大于参数的整数,负数则返回小于参数的整数)。我下面 给你大概实现一下:
int round(double num)
{
int ret = 0; //结果
bool isMid = false; //是否中间
//分正负处理
if(num>=0)
{
//if(num%1 == 0.5 )
if(num%1 >=0.4999999 && num%1<=0.5000001) //当是中间的情况
ret = num/1;
else
ret = (num+0.5)/1;

}else{
        if(num%1 >=0.4999999 && num%1<=0.5000001) //当是中间的情况
            ret = num/1 - 1;
        else
            ret = (num-0.5)/1;
}//else
return ret;

}