1樓:自我程式設計
#include
int p10(int m);//求10的次方double rounding(double n,int w);//小數四捨五入,引數w:精確到第幾數
int main()
return 0;
}double rounding(double n,int w)//小數四捨五入,引數w:精確到第幾數
int p10(int m)//求10的次方{int i,sum=1;
for(i=0;i
2樓:匿名使用者
利用取整截斷小數部分的特性來實現:
float x=3.1415,y; int a;
y=x*100+0.5; a=y; y=a; y/=100; //至此,y中儲存的數為x的保留2位小數的結果
3樓:匿名使用者
正數 x 四捨五入的技巧:
x --> (int)(x+0.5)
當 x=n+r, 0<=r<1,
若 0<=r<0.5, 則r+0.5<1, (int)(x+0.5)=(int)(n+r+0.5)=n
若 0.5<=r<1, 則1<= r+0.5, (int)(x+0.5)=(int)(n+r+0.5)=n+1
c語言中怎樣輸入一個雙精度數,對小數點後第2位進行四捨五入,即保留一位小數,輸出四捨五入的結果。
4樓:windy笨笨狗
#include
int main(void)
5樓:匿名使用者
#include
int main()
c語言。從鍵盤讀入一個實數,對其進行四捨五入處理,要求精確到到小數點後兩位。
6樓:瑞春楓
對12.345來說,先乘以1000,得到12345,賦值給整型,12345%10得到個位數,判斷這個個位數若大於等於5則把12345加10-個位數,若小於5,則12345減去個位數,然後把最終的數先除以10,再除以100.0。
7樓:匿名使用者
可以肯定的告訴你,你找的答案肯定不對。
不信你輸2.225看一下,結果還是2.22原程式一直在對y處理,結果最後都沒有返給x。肯定不對。
為什麼可能會出現正確的結果,這個就很複雜了,要從浮點的儲存說起了。
我現在也還不是很瞭解。
浮點數在計算(特別是和整型混合計算時)、輸入和輸出的時候都可能有精度的丟失。
具體的我也不是很懂,你可以自行去研究一下。
比較完美的程式應該要用double型別,提高精度。
就算有返加給x,用float型別還是會出錯。很難理解。
#include
void main()
x=(double) y/1000;
printf("該實數,四捨五入保留兩位小後是%.2lf\n",x);}
8樓:匿名使用者
#includ
void main()
/*應該這樣就ok了。
9樓:
可以給你介紹實現方法。當然,如果你需求**,也可以寫給你。
c語言如何實現輸出浮點數小數點兩位(四捨五入法),但若小數點最後位為零則捨去??
10樓:匿名使用者
可以通過sprintf函式實現數字四捨五入轉字串,通過處理字串,實現所需功能,具體**,
#include
int main(int argc, char *argv)float 為單精度浮點型資料,在turbo c中單精度型佔4個位元組(32位)記憶體空間,其數值範圍為3.4e-38~3.4e+38,只能提供7位有效數字。
建議輸入採用字串形式,這樣統計不會出偏差,使用數字時,使用double atof( const char *str )函式轉換;如果使用數字,系統會自動補0的,與實際期望不符。
11樓:兔子和小強
要對某個浮點數比如x保留到小數點後兩位,可以將x乘以100,變成對這個數進行四捨五入到個位。
double f(double x)
12樓:匿名使用者
#include
mian()
13樓:xf1號
把浮點數作為字串輸入,再比較最後一位是否為零,若為零則看倒數第二位;否則看是否大於等於5,若是則將倒數第二位加一併判斷,否則直接捨去最後一位。最後輸出修改後的字串。
14樓:
%.nf(%.nlf)
看你要輸出多少位小數,n就為多少
用鍵盤輸入一個 數字,對他的小數點後第二位四捨五入,如何用c語言程式設計。要解題分析。 20
15樓:慕容琦萱
#include
void main()
這個比較方便,可以bai試下。
如果輸入數du
字zhi3.4567的時候,本程式可dao以輸出3.46第一個回答者的程式在版會輸出 3
第二個權回答者的程式會輸出3.5
第三個回答者的程式也是輸出3.5
而且本程式在輸入3.2時會輸出3.20,所有的數都會保留兩位小數,用 a=%.2f 格式很方便。
本人親自驗證哦。
16樓:匿名使用者
#include
int main(void)
17樓:匿名使用者
#include
int main()
18樓:匿名使用者
#include
main()
中國抄物聯網校企聯盟
用c語言怎麼實現浮點數的四捨五入,保留兩位小數點
19樓:匿名使用者
c語言怎麼實現浮點數的四捨五入,保留兩位小數的設計過程為:
定義浮點點數回變數答df,輸入
浮點數浮點數df擴大100倍
浮點數df增加0.5
利用floor()函式得到最接近df數,但不大於df的整數(完成四捨五入)。不能用int強制轉換,否則,資料超過int範圍就會出現錯誤。
浮點數df縮小100倍得到有兩位小數的浮點數按%.2f輸出結果。
參考**:
#include
#include
void main()
20樓:不知道的現在
加0.5強制轉int。這是取到整數的方法。
其他位數道理差不多。2位的話你先乘100,加0.5強制轉int,然後除回100。
注意型別轉換。除100要轉double。
21樓:
float a=10.123;
a=((int)((a*100+5)/100))/100.0;//這個值應該就是保留兩位小數點的值吧
22樓:小_寶
printf("%4.2f",a);類似的,前面一個4是字的位數,後面一個2是兩位小數
c語言中怎樣輸入一個雙精度數,對小數點後第進行四捨五入,不保留小數,輸出四捨五入的結果 是不是pr
23樓:淡若親風
printf("%d",(int)(a+0.5));
C語言。從鍵盤讀入實數,對其進行四捨五入處理,要求精確到到小數點後兩位
瑞春楓 對12.345來說,先乘以1000,得到12345,賦值給整型,12345 10得到個位數,判斷這個個位數若大於等於5則把12345加10 個位數,若小於5,則12345減去個位數,然後把最終的數先除以10,再除以100.0。 可以肯定的告訴你,你找的答案肯定不對。不信你輸2.225看一下,...
如何用c語言將檔案放到二維陣列中
fopen函式開啟需要讀取的文字,獲取該檔案的檔案描述符使用fscan 函式對檔案進行讀取。放到二維陣列其實就是讀取相應格式的資料,然後對應二維陣列的每個位置例如 include stdio.h define m 300 define n 50 void main file fp if fp fop...
如何用c語言將句子中的每個單詞倒序,如I evol uoy變為I love you,注意不用連結串列
include include void main 輸出 printf s strrev str 可以由鍵盤輸入.char str 20 cin str cout strrev str 或者char str 20 scanf s str printf s strrev str 注意不要輸入過多字元....