C語言四舍五入


/*使h中保留兩位小數,並對第三位進行四舍五入
如h為1234.567,則函數返回123.570000
h為123.564,則返回123.560000*/
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

float fun(float h)
{
    int temp=(int)(h*1000+5)/10;
    return (float)temp/100.0;
}
void main()
{
    float a;
    while(scanf("%f",&a)!=EOF)
    {
        printf("%f\n",fun(a));
    }
}

四舍五入算法:如果要求精確到小數點后面的第n位,則需要對n+1位進行運算。
方法是將該小數乘10的n+1次方后加5,然后除10並強制轉換為整數,
再將該數除10的n次方並強制轉換為浮點數。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM