看C語言程序的時候,往往會遇到printf函數輸出,在此,我想總結一下printf的一般用法以及%12d是什么意思
printf函數的一般格式為
printf(格式控制,輸出列表);
例如:
printf(“%d,%c\n”,i,c);
括號內包括兩個部分,分別為格式控制和輸出列表
格式控制總是以格式聲明開始,也就是以%號開始,那么以什么結束呢,通過例子我們可以知道,它是以d,c,f,這樣的字符結束,
d,c,f這樣的字符也代表他們是以什么樣的格式輸出,下面我將寫出printf中常用的格式字符
格式字符 說明
d,i 以帶符號的十進制形式輸出整數(正數不輸出符號)
o 以八進制無符號形式輸出整數
x,X 以十六進制無符號形式輸出整數,用x則輸出方式以小寫形式輸出,否則以大寫形式輸出
u 以無符號十進制形式輸出整數
c 以字符型輸出,只輸出一個字符
s 輸出字符串
f 以小數形式輸出單、雙精度數,隱含輸出六位小數
e,E 以指數形式輸出實數,e表示(如1.2e+02),E表示(如1.2E+02)
g,G 選用%f或%e格式中輸出寬度較短的一種格式,不輸出無意義的0.用G時,若以指數形式輸出,則指數以大寫表示
總結一下
這里面常用的格式字符有d,c,f,記法如下:d和i一樣的用法,i是int的縮寫,所以d就是輸出整數;c是char的縮寫,char 代表單個字符型,所以c就是字符型
輸出方式;f是float的縮寫,float代表單精度浮點型,所以f就是浮點型的輸出方式
輸出列表一般都是已經定義好的變量
例如
int i=10;
printf("%d\n",i);
這里的i就代表輸出列表
接下來,我想解釋一下%12d的意思
例如:
printf("%12d",f[i]);
我們從上面可以知道,%號是開始標志,d代表輸出方式是整數類型,f[i]是輸出列表
重點:
12就是代表輸出一共有12位,也就是我給你12個位子,讓你去坐,
但是可能遇到我們不需要12個位子,怎么辦呢
我們通過以前的學習知道,程序是由右向左運行的,所以我們從右邊開始填位子,不足的就留空位
例子如下:
int i=123;
printf(“%12d\n”,i);
輸出結果如下:
123
左邊不足用空位補齊
當然,如果超出啦怎么辦?
超出的話按照實際值輸出就可以啦
總結
%12d的用法就是先給12個位子給你,然后再賦值,賦值的方法就是從右往左,不足用空格表示。
