c語言printf格式控制包括兩種資訊這兩種資訊要怎

時間 2021-10-17 04:40:55

1樓:小夏在深圳

printf() 函式輸出資料,也就是類似於上面圖中的輸出裝置。它可以通過格式控制字元輸出多個任意型別的資料。

%d表示int型別的值的例子如下:

printf("a=%d,b=%d",a,b)

結果為:a=1,b=2

其中第一個%d會用第一個變數的值來代替,第二個%d會用第二個變數的值來代替。如果還有,則以此類推就可以。

在c語言中printf函式中,可以使用\n來進行語句換行,\n是一個轉義字元常量,它相當於一個換行符。

比如下面的**:

printf("hello\nworld\n");程式在執行時,會先將hello字串以一行輸出,再另一行輸出world字串。

擴充套件資料

1、對於字串,它指定列印的字元的最大個數。

2、對於整數,它指定列印的數字位數(必要時可加填充位 0 以達到寬度要求。

3、對於轉換字元為 e、e 或 f,它指定列印的小數點後的數字位數。

4、對於轉換字元為 g 或 g,它指定列印的有效數字位數。

2樓:會飛的小兔子

1、printf格式d格式:用來輸出十進位制整數。有以下幾種用法:

%d:按整型資料的實際長度輸出。%md:

m為指定的輸出欄位的寬度。如果資料的位數小於m,則左端補以空格,若大於m,則按實際位數輸出。%ld:

輸出長整型資料。

例:main()

執行結果:-1,177777

2、printf格式輸出字元“%”,則應該在“格式控制”字串中用連續兩個%表示。

例:printf(“%f%%”,1。0/3);

輸出0。333333%。

擴充套件資料printf函式的使用說明

輸出字元"%",則應該在“格式控制”字串中用連續兩個%表示,如:

printf("%f%%",1.0/3);

輸出0.333333%。

對於單精度數,使用%f格式符輸出時,僅前7位是有效數字,小數6位。

對於雙精度數,使用%lf格式符輸出時,前16位是有效數字,小數6位。

對於m.n的格式還可以用如下方法表示charch[20];

printf("%*.*s\n",m,n,ch);

前邊的*定義的是總的寬度,後邊的*定義的是輸出的個數。分別對應外面的引數m和n。這種方法的好處是可以在語句之外對引數m和n賦值,從而控制輸出格式。

3樓:匿名使用者

你說的是這樣麼?

int a=1;

print("c=%4d\n",a);

輸出結果:c= 1(1前面3個空,然後換行)print("c=%04d\n",a);

輸出結果:c=0001

換行和位數,算2種麼?

c語言中printf()後的括號裡面的怎麼寫,表示什麼?

4樓:匿名使用者

int printf(const char *format,[argument]);

format 引數輸出的格式,定義格式為:

%[flags][width][.perc] [f|n|h|l]type

規定資料輸出方式,具體如下:

1.type 含義如下:

d 有符號10進位制整數

i 有符號10進位制整數

o 有符號8進位制整數

u 無符號10進位制整數

x/x 有符號16進位制整數

f/f 浮點數

e/e 用科學表示格式的浮點數

g 使用%f和%e表示中的總的位數表示最短的來表示浮點數 g 同g格式,但表示為指數

c 單個字元

s 字串

% 顯示百分號本身

p 顯示一個指標,near指標表示為:***x

far 指標表示為:***x:yyyy

n 相連參量應是一個指標,其中存放已寫字元的個數

2.flags 規定輸出格式,取值和含義如下:

無 右對齊,左邊填充0和空格

+ 左對齊,右邊填充空格

- 在數字前增加符號 + 或 -

一個空格 只對負數顯示符號

# 當type=c,s,d,i,u時沒有影響

type=o,x,x時,在數值前增加'0'字元

type=e,e,f時,總是使用小數點

type=g,g時,除了數值為0外總是顯示小數點 3.width 用於控制顯示數值的寬度,取值和含義如下n(n=1,2,3...) 寬度至少為n位,不夠以空格填充

0n(n=1,2,3...) 寬度至少為n位,不夠左邊以0填充 * 格

式列表中,下一個引數還是width 4.prec 用於控制小數點後面的位數,取值和含義如下:

無 按預設精度顯示

0 當type=d,i,o,u,x時,沒有影響

type=e,e,f時,不顯示小數點

n(n=1,2,3...) 當type=e,e,f時表示的最大小數位數

type=其他,表示顯示的最大寬度 .*

格式列表中,下一個引數還是width

5.f|n|h|l 表示指標是否是遠指標或整數是否是長整數

f 遠指標

n 近指標

h短整數或單精度浮點數

l 長整數或雙精度浮點數

1.一般格式

printf(格式控制,輸出表列)

例如:printf("i=%d,ch=%c\n",i,ch);

說明:(1)“格式控制”是用雙撇號括起來的字串,也稱“轉換控制字串”,它包括兩種資訊:

①格式說明:由“%”和格式字元組成,它的作用是將輸出的資料轉換為指定的格式輸出。

②普通字元,即需要原樣輸出的字元。

(2)“輸出表列”是需要輸出的一些資料,可以是表示式

(3)printf函式的一般形式可以表示為

printf(引數1,引數2,……,引數n)

功能是將引數2~引數n按引數1給定的格式輸出

2.格式字元(9種)

(1)d(或i)格式符。用來輸出十進位制整數,有以下幾種用法:

①%d,按整型資料的實際長度輸出。

②%md,m為指定的輸出欄位的寬度。如果資料的位數小於m,則左端補以空格,若大於m,則按實際位數輸出。

③%ld(%mld 也可),輸出長整型資料。

例如:long a=123456;

printf("%ld",a);

(2)o格式符,以八進位制數形式輸出整數。格式:%o,%mo,%lo,%mlo都可。

(3)x(或x)格式符,以十六進位制數形式輸出整數。格式:%x,%mx,%lx,%mlx都可。

(4)u格式符,用來輸出unsigned型資料,即無符號數,以十進位制數形式輸出。格式:%u,%mu,%lu都可。

參見:li4-3.c/*無符號資料的輸出*/

(5)c格式符,用來輸出一個字元。格式:%c,%mc都可。

(6)s格式符,用來輸出一個字串。格式:%s,%ms,%-ms,%m.ns,%-m.ns都可。

參見:li4-5.c /*字串的輸出*/

(7)f格式符,用來輸出實數(包括單、雙精度),以小數形式輸出。格式:%f,%m.nf,%-m.nf都可。

注意:單精度實數的有效位數一般為7位,雙精度為16位。

參見:li4-6.c/*輸出單精度實數時的有效位數*/

li4-7.c/*輸出雙精度實數時的有效位數*/

li4-8.c/*輸出實數時指定小數位數*/

(8)e(或e)格式符,以指數形式輸出實數。格式:%e,%m.ne,%-m.ne都可。

(9)g(或g)格式符,用來輸出實數,它根據數值的大小,自動選f格式或e格式(選擇輸出時佔寬度較小的一種)。

3.說明

(1)除了x、e、g(用大寫字母表示)外,其他格式字元必須用小寫字母;

(2)“格式控制”字串內可以包含轉義字元;

(3)如果想輸出字元“%”,則應該在“格式控制”字串中用連續兩個%表示,如:

printf("%f%%",1.0/3);

(4)格式字元表參見下表

表4.1 printf格式字元

格式字元 說 明

d,i 以帶符號的十進位制形式輸出整數(正數不輸出符號)

o 以八進位制無符號形式輸出整數(不輸出前導符0)

x,x 以十六進位制無符號形式輸出整數(不輸出前導符0x),用x則輸出十六進位制數的a~f時以小寫形式輸出,用x時,則以大寫字母輸出

u 以無符號十進位制形式輸出整數

c 以字元形式輸出,只輸出一個字元

s 輸出字串

f 以小數形式輸出單、雙精度數,隱含輸出6位小數

e,e 以指數形式輸出實數

g,g 選用%f或%e格式中輸出寬度較短的一種格式,不輸出無意義的0

表4.2 printf的附加格式說明字元

字元說明

字母l用於長整型整數,可加在格式符d、o、x、u前面

m(代表一個正整數)

資料最小寬度

n(代表一個正整數)

對實數,表示輸出n位小數;對字串,表示擷取的字元個數

-輸出的數字或字元在域內向左靠

5樓:匿名使用者

printf("任意文字或字元");

printf("任意字元1 %d 任意字元2 %s",整型變數1,字元型變數2);

或者舉個更簡單的例子a=1;b=2;printf("a=%d,b=%d",a,b);顯示的結果就是a=1,b=2

6樓:匿名使用者

printf([字串][,變數])

字串:如"aabb","aaa%defdk","dsf%feadi"

變數:a,b,d,3,5,6...

可以只有字串無變數,但是隻有變數沒有字串,那就好無意義了。

為什麼?不知道你沒有沒看到在上面的三個字串中後面兩個字串中都有一個%,重點就在這裡

%d表示int型別的值,看下面的例子你就會明白:

a=1,b=2

printf("a=%d,b=%d",a,b)結果為:a=1,b=2

其中第一個%d會用第一個變數的值來代替,第二個%d會用第二個變數的值來代替。如果還有,則以此類推就可以了。

關於%d是什麼,你就可以去參考第二位朋友的回答了!

7樓:千夜渡落日

printf表示輸出

printf("%d\n",m)是其一般形式。

8樓:匿名使用者

while(){};

do{}while();

for(;;;){};

c語言的輸出格式控制問題,C語言的輸出格式控制問題。

心雲細雨 用十進位制整數來表示輸出的最少位數。若實際位數多於定義的寬度,則按實際位數輸出,若實際位數少於定義的寬度則補以空格 1 一般格式 printf 格式控制,輸出表列 例如 printf i d,ch c n i,ch 說明 1 格式控制 是用雙撇號括起來的字串,也稱 轉換控制字串 它包括兩種...

c語言中的printf語句printf蘋果的價格為

想念你的那個誰 12f表示輸出時的資料佔12個字元寬度,由於沒有指定小數點位數所以預設顯示6位小數,即若是 f則顯示123.456000,這個顯示一共10位 包含小數點 與 12f要求的12位寬度還差2個字元寬度,就在前面新增兩個空格 如果是 012f,則會顯示00123.456000,即那兩個空格...

c語言中有,C語言中有printf 3 0f f6 1f n , fahr,celsius 其中 是什麼意思?

printf 3.0f f6.1f n fahr,celsius 3.0f 的意思是用3位浮點型數來輸出變數fahr的值 小數位為零 f6.1f n 的意思是用6位小數點為1位的浮點型數來輸出變數celsius的值.其中的小數點前後的兩位數分別表示要輸出變數的總位數和它的小數位數。 格式說明的字首 ...