回覆列表
-
1 # 老生談笑
-
2 # 南風微涼秋風茶色
格式控制符:
%---格式說明引導符。
----指定左對齊輸出。
0---指定空位填零。
m.n---指定輸出域寬度及精度。
l.h---輸出長度的修正。
格式字元:
%i---輸出一個整型數;
%d---輸出一個整型數;
%f---輸出一個浮點數;
%e---輸出一個浮點數,科學計數法;
%g---輸出一個浮點數,當指數小於-4或者大於5,則運用科學計數法,否則正常顯示浮點數;
%c---輸出一個字元;
%o---輸出一個八進位制的整型數,前面不帶0;
%#o---輸出一個八進位制的整型數,前面帶0;
%x---輸出一個十六進位制的整型數,前面不帶0x;
%#x---輸出一個十六進位制的整型數,前面帶0x,如果x大寫,則顯示的時候也是大寫。
%u---不帶符號的十進位制整數。
%%---輸出一個%.
跳脫字元:
\a:蜂鳴,響鈴
\b:回退:向後退一格
\f:換頁
\n:換行,游標到下行行首
\r:回車,游標到本行行首
\t:水平製表
\v:垂直製表
\\:反斜槓
\":單引號
\":雙引號
\?:問號
\ddd:三位八進位制
\xhh:二位十六進位制
\0:空字元(NULL),什麼都不做
printf的格式控制的完整格式:
%-0m.nl或h格式字元
下面對組成格式說明的各項加以說明:
①%:表示格式說明的起始符號,不可缺少。
②-:有-表示左對齊輸出,如省略表示右對齊輸出。
④m.n:m指域寬,即對應的輸出項在輸出裝置上所佔的字元數。N指精度。用於說明輸出的實型數的小數位數。為指定n時,隱含的精度為n=6位。
⑤l或h:l對整型指long型,對實型指double型。h用於將整型的格式字元修正為short型。
無論在scanf或printf中,都是“跳過一個字元”的意思。比如:char a,b;scanf("%*c%c",&a);printf("%c\n",a);若輸入xy,則輸出y,輸入的x字元被跳過。而printf("%*c\n",2,"b");則輸出兩空格後接著輸出b,跳過的數目由對應的2確定。