輸出精度問題

2021-08-10 23:35:07 字數 1046 閱讀 4365

#include int main() 

/*%d

有符號10進製整數

%i 有符號10進製整數

%o 有符號8進製整數

%u 無符號10進製整數

%x 無符號的16進製制數字,並以小寫abcdef表示

%x 無符號的16進製制數字,並以大寫abcdef表示

%f/%f 浮點數

%e/%e 用科學表示格式的浮點數

%g 使用%f和%e表示中的總的位數表示最短的來表示浮點數 g 同g格式,但表示為指數

%c 單個字元

%s 字串

%% 顯示百分號本身

*/ /*

%md: m為指定輸出資料的寬度 如果位數小於m,則左端補以空格,如果大於m,則按實際位數輸出

顯然a=1234的位數是4 大於%2d中指定的長度2 按實踐位數輸出 所以結果為1234

%m.nf

格式:指定輸出資料寬度為m位,其中小數佔n位,如果數值長度小於m,則左端補空格,%-m.nf與上差不多,只是如果數值長度小於m,則右端補空格,大於的話就按原長度輸出

%2.1f

就是指長度2位,含一位小數字,由於原長度大於2,所以原樣輸出,但只能右一位小數,所以結果是123.4

%2.11f

,就是含11位小數,顯然長度不夠,則右端補零 結果位12345.54321000000

%e:不指定輸出資料所佔的寬度和數字部分的小數字數,有的c編譯系統自動指定給出數字部分的小數字數為6位,指數部分佔5位(如e+002),其中"e"佔1位,指數符號佔1位,指數佔3位,總的指數部分佔5位。數值按規範化指數形式輸出。例如:printf("%e",123.456);輸出如下:1.234560e+002(共13列,有的系統的規定有所不同);

%m.ne

輸出的資料共佔m列,其中有n位小數。如果數值長度小於m,則左端補空格。

s格式符,用來輸出字串。

%m.ns

輸出佔m列,但只取字串中左端n個字元。這n個字元輸出在m列的右側,左補空格。

*/

C 輸出精度控制

如下 include includeusing namespace std void main double f 3.1415926535 cout enter the huashi temperature endl 方法一 cout.precision 3 呼叫cout的precision 函式設...

小數點輸出精度控制問題

小數點輸出精度控制問題 setf 是追加標誌字的函式,而flags 是設定標誌字 fixed標誌是以定點形式顯示浮點數 當有fixed標誌時,說明資料按一定的位數輸出,否則去掉fixed標誌後,資料按原位輸出 即小數最後面的0不顯示 因此,使用時有兩種情況 1 原位輸出,這時應去掉fixed標誌 c...

cout 輸出精度的控制方法

前陣子在牛客上做了一道純粹輸出的題,輸出控制小數點後的數字的個數,由輸入決定。時間限制 c c 1秒,其他語言2秒 空間限制 c c 32768k,其他語言65536k 喜愛acm的pby同學遇到了一道數學難題,已知底數n,請你幫他準確的計算出結果a n n的 次方 結果保留小數點後x位。第一行是乙...