C語言中的格式控制符

2021-08-21 10:17:27 字數 1373 閱讀 9355



用在輸入

輸出函式scanf( )和printf( )中的格式控制部分,

即第乙個逗號前的雙引號內

,用來對輸出的資料(識別符號或表示式)進行格式說明,包括資料型別、長度、對齊方式、小數字數等。

1.格式控制符的形式

%  [-]  [0]  [m/m.n]  [l/h] 格式控制符

其中[ ]裡面的內容是可選的

-:表示左對齊,預設情況下為右對齊(若沒規定輸出資料的寬度則為左對齊)。

0:當規定輸出資料的寬度時,所輸出資料實際的寬度小於規定的寬度,則在左邊用「0」補齊。

m/m.n:m規定了輸出資料的寬度(位數),若資料實際的寬度大於m,則突破m的限制全部輸出,反之, 將資料全部輸出之後用空格進行左補齊;對於實數n是指小數點後的位數,若n小於小數點後實際的位數,則按四捨五入原則進行擷取;對於字串,n表示從左至右擷取的字元個數。

l/h:l表示長整型資料(可用於%ld。%lo,%lx,%lu),以及double型資料(%lf或%le);h表示短整型資料(可用於%hd。%ho,%hx)。

2.格式控制符及其功能(以輸出為例)

%d:用來輸出有符號的十進位制整數(包括

char型別

)%u:

用來輸出無符號的十進位制整數(包括

char型別

) %o:

用來輸出無符號的八進位制整數

%x:用來輸出無符號的十六進製制整數

%c:用來輸出單個字元

%s:用來輸出乙個字串

%f:用來輸出小數形式的十進位制浮點數(輸入時小數形式和指數形式都可以識別)

%e:用來輸出指數形式的十進位制浮點數(輸入時小數形式和指數形式都可以識別)

%g:用來輸出指數形式和小數形式兩者中較短的十進位制浮點數(輸入時小數形式和指數形式都可以識別)

3.

注意事項

(1)f表示的浮點數精度為6,

若浮點數的實際小數字長大於6,則擷取6位,第7位四捨五入;若浮點數的實際小數字數小於6,則後補0。如1.23轉換成1.230000;1.23456789轉換成1.234568。

(2)對於實數,m指的是包括小數點在內的資料的位數。

(3)%作為算術運算子時,可用於求餘(也叫取模),餘數的正負號與被除數相同。

4.例項

C語言 格式控制符

d 以帶符號的十進位制形式輸出整數 o 以八進位制無符號形式輸出整數 x 以十六進製制無符號形式輸出整數 u 以無符號十進位制形式輸出整數 c 以字元形式輸出,只輸出乙個字元 s 輸出字串 f 以小數形式輸出單,雙精度數,隱含輸出六位小數 e 以指數形式輸出實數 g 選用 f或 e格式中輸出寬度較短...

C語言格式控制符

d 整型格式控制符 f 浮點型 單精度 格式控制符 i 整型格式控制符,和 d完全一樣 u 無符號整型格式控制符 c 字元格式控制符 s 字串格式控制符 lf 雙精度格式控制符 e 指數形式輸出格式控制符 o 無符號八進位制數格式控制符 x 無符號十六進製制格式控制符,如 1f x 無符號十六進製制...

C語言格式控制符和轉義字元

1.格式控制符 格式輸出printf 作用是向終端輸出若干個型別任意的資料。格式 printf 格式控制符,輸出列表 1 格式控制符 l 格式說明引導符。l 指定左對齊輸出。l 指定空位填零。l m.n 指定輸出域寬度及精度 m表示資料最小寬度,如果實際資料寬度 m,按實際資料寬度輸出,如果實際資料...