- 論壇徽章:
- 0
|
http://www.zbxcl.cn/article.asp?id=273
1.一般格式
printf(格式控制,輸出表列)
例如:printf("i=%d,ch=%c\n",i,ch);
說(shuō)明:
(1)“格式控制”是用雙撇號(hào)括起來(lái)的字符串,也稱“轉(zhuǎn)換控制字符串”,它包括兩種信息:
①格式說(shuō)明:由“%”和格式字符組成,它的作用是將輸出的數(shù)據(jù)轉(zhuǎn)換為指定的格式輸出。
②普通字符,即需要原樣輸出的字符。
(2)“輸出表列”是需要輸出的一些數(shù)據(jù),可以是表達(dá)式
(3)printf函數(shù)的一般形式可以表示為
printf(參數(shù)1,參數(shù)2,……,參數(shù)n)
功能是將參數(shù)2~參數(shù)n按參數(shù)1給定的格式輸出
2.格式字符(9種)
(1)d(或i)格式符。用來(lái)輸出十進(jìn)制整數(shù),有以下幾種用法:
①%d,按整型數(shù)據(jù)的實(shí)際長(zhǎng)度輸出。
②%md,m為指定的輸出字段的寬度。如果數(shù)據(jù)的位數(shù)小于m,則左端補(bǔ)以空格,若大于m,則按實(shí)際位數(shù)輸出。
③%ld(%mld 也可),輸出長(zhǎng)整型數(shù)據(jù)。
例如:long a=123456;
printf("%ld",a);
(2)o格式符,以八進(jìn)制數(shù)形式輸出整數(shù)。格式:%o,%mo,%lo,%mlo都可。
(3)x(或X)格式符,以十六進(jìn)制數(shù)形式輸出整數(shù)。格式:%x,%mx,%lx,%mlx都可。
(4)u格式符,用來(lái)輸出unsigned型數(shù)據(jù),即無(wú)符號(hào)數(shù),以十進(jìn)制數(shù)形式輸出。格式:%u,%mu,%lu都可。
參見(jiàn):li4-3.c/*無(wú)符號(hào)數(shù)據(jù)的輸出*/
(5)c格式符,用來(lái)輸出一個(gè)字符。格式:%c,%mc都可。
(6)s格式符,用來(lái)輸出一個(gè)字符串。格式:%s,%ms,%-ms,%m.ns,%-m.ns都可。
參見(jiàn):li4-5.c /*字符串的輸出*/
(7)f格式符,用來(lái)輸出實(shí)數(shù)(包括單、雙精度),以小數(shù)形式輸出。格式:%f,%m.nf,%-m.nf都可。
注意:?jiǎn)尉葘?shí)數(shù)的有效位數(shù)一般為7位,雙精度為16位。
參見(jiàn):li4-6.c/*輸出單精度實(shí)數(shù)時(shí)的有效位數(shù)*/
li4-7.c/*輸出雙精度實(shí)數(shù)時(shí)的有效位數(shù)*/
li4-8.c/*輸出實(shí)數(shù)時(shí)指定小數(shù)位數(shù)*/
(8)e(或E)格式符,以指數(shù)形式輸出實(shí)數(shù)。格式:%e,%m.ne,%-m.ne都可。
(9)g(或G)格式符,用來(lái)輸出實(shí)數(shù),它根據(jù)數(shù)值的大小,自動(dòng)選f格式或e格式(選擇輸出時(shí)占寬度較小的一種)。
3.說(shuō)明
(1)除了X、E、G(用大寫字母表示)外,其他格式字符必須用小寫字母;
(2)“格式控制”字符串內(nèi)可以包含轉(zhuǎn)義字符;
(3)如果想輸出字符“%”,則應(yīng)該在“格式控制”字符串中用連續(xù)兩個(gè)%表示,如:
printf("%f%%",1.0/3);
(4)格式字符表參見(jiàn)下表
表4.1 printf格式字符
格式字符 說(shuō) 明
d,i 以帶符號(hào)的十進(jìn)制形式輸出整數(shù)(正數(shù)不輸出符號(hào))
o 以八進(jìn)制無(wú)符號(hào)形式輸出整數(shù)(不輸出前導(dǎo)符0)
x,X 以十六進(jìn)制無(wú)符號(hào)形式輸出整數(shù)(不輸出前導(dǎo)符0x),用x則輸出十六進(jìn)制數(shù)的a~f時(shí)以小寫形式輸出,用X時(shí),則以大寫字母輸出
u 以無(wú)符號(hào)十進(jìn)制形式輸出整數(shù)
c 以字符形式輸出,只輸出一個(gè)字符
s 輸出字符串
f 以小數(shù)形式輸出單、雙精度數(shù),隱含輸出6位小數(shù)
e,E 以指數(shù)形式輸出實(shí)數(shù)
g,G 選用%f或%e格式中輸出寬度較短的一種格式,不輸出無(wú)意義的0
表4.2 printf的附加格式說(shuō)明字符
字符
說(shuō)明
字母l
m(代表一個(gè)正整數(shù))
n(代表一個(gè)正整數(shù))
-
輸出的數(shù)字或字符在域內(nèi)向左靠
對(duì)實(shí)數(shù),表示輸出n位小數(shù);對(duì)字符串,表示截取的字符個(gè)數(shù)
數(shù)據(jù)最小寬度
用于長(zhǎng)整型整數(shù),可加在格式符d、o、x、
本文來(lái)自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u1/34937/showart_1210385.html |
|