C 語言基礎(chǔ)教程

C 語言流程控制

C 語言函數(shù)

C 語言數(shù)組

C 語言指針

C 語言字符串

C 語言結(jié)構(gòu)體

C 語言文件

C 其他

C 語言參考手冊(cè)

C 格式轉(zhuǎn)換說明符

格式說明符是在格式化的輸入和輸出函數(shù)中使用的字符串。格式字符串確定輸入和輸出的格式。格式字符串始終以“%”字符開頭。

一 、轉(zhuǎn)換說明符及作為結(jié)果的打印輸出

轉(zhuǎn)換說明

輸 出

%a

浮點(diǎn)數(shù)、十六進(jìn)制數(shù)字和p-記數(shù)法 (C99)

%A

浮點(diǎn)數(shù)、十六進(jìn)制數(shù)字和P-記數(shù)法 (C99)

%c

一個(gè)字符

%d

有符號(hào)十進(jìn)制整數(shù)

%e

浮點(diǎn)數(shù)、e-記數(shù)法

%E

浮點(diǎn)數(shù)、E-記數(shù)法

%f

浮點(diǎn)數(shù),十進(jìn)制記數(shù)法

%g

根據(jù)數(shù)值不同自動(dòng)選擇%f或者%e。%e格式在指數(shù)小于-4或者大于等于精度時(shí)使用

%G

根據(jù)數(shù)值不同自動(dòng)選擇%f或者%E。%E格式在指數(shù)小于-4或者大于等于精度時(shí)使用

%i

有符號(hào)十進(jìn)制整數(shù) (與%d相同)

%o

無符號(hào)八進(jìn)制整數(shù)

%p

指針(就是指地址)

%s

字符串

%u

無符號(hào)十進(jìn)制整數(shù)

%x

使用十六進(jìn)制數(shù)字0f 的無符號(hào)十六進(jìn)制整數(shù)

%X

使用十六進(jìn)制數(shù)字0F的無符號(hào)十六進(jìn)制整數(shù)

%%

打印一個(gè)百分號(hào)

二 、printf() 修飾符

修飾符

意 義

標(biāo)志

五種標(biāo)志 (-、+、空格、# 和0) 都將在表三中描述,可以使用零個(gè)或多個(gè)標(biāo)志

digit(s)

字段寬度的最小值。如果該字段不能容納要打印的數(shù)或者字符串,系統(tǒng)會(huì)使用更寬的字段。示例:“%4d”

.digit(s)

精度。對(duì)于%e、%E和%f轉(zhuǎn)換,是將要在小數(shù)點(diǎn)的右邊打印的數(shù)字的位數(shù)。對(duì)于%g和%G轉(zhuǎn)換,是有效數(shù)字的最大位數(shù)。對(duì)于%s轉(zhuǎn)換,是將要打印的字符的最大數(shù)目。對(duì)于整數(shù)轉(zhuǎn)換,是將要打印的數(shù)字的最小位數(shù);如果必要,要使用前導(dǎo)零來達(dá)到這個(gè)位數(shù)。只使用“.”表示其后跟隨一個(gè)零,所以%.f與%.0f相同。示例:“%5.2f”打印一個(gè)浮點(diǎn)數(shù),他的字段寬度為5個(gè)字符,小數(shù)點(diǎn)后有兩個(gè)數(shù)字。

h

和整數(shù)轉(zhuǎn)換說明符一起使用,表示一個(gè)short int 或者 unsigned short int 類型數(shù)值。

示例:“%hu”、“%hx”和“%6.4hd”

hh

和整數(shù)轉(zhuǎn)換說明符一起使用,表示一個(gè)signed char 或者unsigned char類型數(shù)值。

示例:“%hhu”、“%hhx”和“%6.4hhd”

j

和整數(shù)轉(zhuǎn)換說明符一起使用,表示一個(gè)intmax_t或uintmax_t值。

示例:“%jd”和“%8jX”

l

和整數(shù)說明符一起使用,表示一個(gè)long int 或者unsigned long int 類型值。

示例:“%ld”和“%8lu”

ll

和整數(shù)說明符一起使用,表示一個(gè)long long intunsigned long long int 類型值 (C99)。

示例:“%lld”和“%8llu”

L

和浮點(diǎn)轉(zhuǎn)換說明符一起使用,表示一個(gè)long double值。

示例:“%Lf”和“%10.4Le”

t

和整數(shù)轉(zhuǎn)換說明符一起使用,表示一個(gè)ptrdiff_t值(與兩個(gè)指針之間的差相對(duì)應(yīng)的類型) (C99)

示例:“%td”和“%12ti”

z

和整數(shù)轉(zhuǎn)換說明符一起使用,表示一個(gè)size_t(sizeof返回的類型) (C99)。

示例:“%zd”和“%12zx”

、printf()的標(biāo)志

修飾符

意 義

-

項(xiàng)目是左對(duì)齊的,也就是說,會(huì)把項(xiàng)目打印在字段的左側(cè)開始處。示例:“%-20s”

+

有符號(hào)的值若為正,則顯示帶加號(hào)的符號(hào);若為負(fù),則帶減號(hào)的符號(hào)。示例:“%+6.2f”

(空格)

有符號(hào)的值若為正,則顯示時(shí)帶前導(dǎo)空格(但是不顯示符號(hào));若為負(fù),則帶減號(hào)符號(hào)。+標(biāo)志會(huì)覆蓋空格標(biāo)志。示例:“% 6.2f”

#

使用轉(zhuǎn)換說明的可選形式。若為%o格式,則以0開始;若為%x和%X格式,則以0x或0X開始,對(duì)于所有的浮點(diǎn)形式,#保證了即使不限任何數(shù)字,也打印一個(gè)小數(shù)點(diǎn)字符。對(duì)于%g和%G格式,它防止尾隨零被刪除。示例:“%#o”、“%#8.0f”和“%+#10.3E”

0

對(duì)于所有的數(shù)字格式,用前導(dǎo)零而不是用空格填充字段寬度。如果出現(xiàn)-標(biāo)志或者指定了精度(對(duì)于整數(shù))則忽略該標(biāo)志。示例:“%010d”和“%08.3f”

四、ANSIC 中 scanf()的轉(zhuǎn)換說明符

轉(zhuǎn)換說明符

意 義

%c

把輸入解釋成一個(gè)字符

%d

把輸入解釋成一個(gè)有符號(hào)十進(jìn)制整數(shù)

%e,%f,%g, %a

把輸入解釋成一個(gè)浮點(diǎn)數(shù) (%a是C99標(biāo)準(zhǔn))

%E,%F,%G,%A

把輸入解釋成一個(gè)浮點(diǎn)數(shù) (%A是C99標(biāo)準(zhǔn))

%i

把輸入解釋成一個(gè)有符號(hào)十進(jìn)制整數(shù)

%o

把輸入解釋成一個(gè)有符號(hào)八進(jìn)制數(shù)

%p

把輸入解釋成一個(gè)指針(地址)

%s

把輸入解釋成一個(gè)字符串;輸入的內(nèi)容以一個(gè)非空白字符作為開始,并且包含知道下一個(gè)空白字符的全部字符

%u

把輸入解釋成一個(gè)無符號(hào)十進(jìn)制整數(shù)

%x,%X

把輸入解釋成一個(gè)有符號(hào)十六進(jìn)制整數(shù)

五 、scanf()的轉(zhuǎn)換修飾符

修飾符

意 義

*

滯后賦值。示例:“%*d”

digit(s)

最大字段寬度;在達(dá)到最大字段寬度或者遇到第一個(gè)空白字符時(shí)(不管哪一個(gè)先發(fā)生都一樣)停止對(duì)輸入項(xiàng)的讀取。示例:“%10s”

hh

把整數(shù)讀作signed char 或 unsigned char 。示例:“%hhd”“%hhu”

ll

把整數(shù)讀作long long或者 unsigned long long (C99)。示例:“%lld”“%llu”

h,l或L

“%hd”和“hi”指示該值將會(huì)存儲(chǔ)在一個(gè)short int中。

“%ho”“%hx”和“%hu”指示該值將會(huì)存儲(chǔ)在一個(gè)unsigned short int中。

“%ld”和“%li”指示該值將會(huì)存儲(chǔ)在一個(gè)long中。

“%lo”“%lx”和“%lu”指示該值將會(huì)存儲(chǔ)在一個(gè)unsigned long中。

“%le”“%lf”和“%lg”指示該值以double類型存儲(chǔ)。將L(而非l)與e、f和g一起使用指示該值以long double類型存儲(chǔ)。

如果沒有這些修飾符,d、i、o和x指示int類型,而e、f和g指示float類型。

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清