废话少说,上图。
#include<stdio.h>
int main()
{
int y=x>>24;//预留头8位,以便后面补上。
int t=!!(x>>31);//向零涉入,当x小于0就输出1,否则输出0;
y=y<<24;
x=x<<8;//留八位当小数位:八个0;
x=((x<<2)+x)>>3;//乘以5除八。
x=x&0xffffff00;//舍弃小数位。
x=x>>8;//挪回去。
x=x&0x00ffffff;//补上头8位。
x=x+y+t;//再加上向零舍入的t。
return x;
}