格式化輸入輸出

2022-07-19 23:57:23 字數 2804 閱讀 9145

printf:

*%%:輸出百分號

*%a:浮點數、十六進製制數字和p-記數法(c99) 

*%a:浮點數、十六進製制數字和p-記法(c99) 

*%c:乙個字元char

*%c:乙個iso寬字元 

*%d:有符號十進位制整數int

*%ld,%ld:長整型資料long

*%hd:短整型資料 

*%e:浮點數、e-記數法 

*%e:浮點數、e-記數法 

*%f:單精度浮點數(預設float),十進位制記數法 

*%.nf:這裡n表示精確到小數字後n位,十進位制記數法 

*%g:根據數值不同自動選擇%f%e

*%g:根據數值不同自動選擇%f%e

*%i:有符號十進位制數(與%d相同) 

*%o:無符號八進位制整數 

*%p:指標 

*%s:對應字串char*%s == %hs == %hs輸出窄字串) 

*%s:對應寬字串wcahr*%ws == %s輸出寬字串) 

*%u:無符號十進位制整數unsigned int

*%x:無符號十六進製制整數(形式為2f) 

*%#x:無符號十六進製制整數(形式為0x2f) 

*%x:無符號十六進製制整數(形式為2f) 

*%#x:無符號十六進製制整數(形式為0x2f) 

*%%:列印乙個百分號 

*%lld:用於int64或者long long

*%llu:用於uint64或者unsigned long long

*%llx:用於64位16進製制資料

說明:%:表示格式說明的起始符號,不可缺少

-:有-表示左對齊輸出,如省略表示右對齊輸出

+:有+表示輸出有符號數的正負號

0:有0表示指定空位填0,如省略表示指定空位不填

m.nm指域寬,即對應的輸出項在輸出裝置上所佔的字元數;n指精度,用於說明輸出的實型數的小數字數,未指定n時,隱含的精度為n=6

l,hl對整型指long型,對實型指double型;h用於將整型的格式字元修正為short

格式字元

格式字元用以指定輸出項的資料型別和輸出格式。

o格式:以無符號八進位制形式輸出整數。對長整型可以用%lo格式輸出。同樣也可以指定字段寬度用%mo格式輸出。

x格式:以無符號十六進製制形式輸出整數。對長整型可以用%lx格式輸出。同樣也可以指定字段寬度用%mx格式輸出。

u格式:以無符號十進位制形式輸出整數。對長整型可以用%lu格式輸出。同樣也可以指定字段寬度用%mu格式輸出。

c格式:輸出乙個字元。

s格式:用來輸出乙個串。有以下幾種用法: 

f格式:用來輸出實數(包括單、雙精度),以小數形式輸出。有以下幾種用法: 

e格式:以指數形式輸出實數。可用以下形式: 

g格式:自動選f格式或e格式中較短的一種輸出,且不輸出無意義的零。

可變寬度引數

對於m.n的格式還可以用如下方法表示:

char ch[20];

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

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

**

格式化輸入 輸出

scanf 函式和 printf 函式是c語言程式設計中使用最頻繁的兩個函式,他們用來格式化輸入和輸出。printf 函式 printf 格式串,表示式1,表示式2 格式串包含普通字元和轉換說明 轉換說明以 字元開頭 轉換說明可以用 m.px格式或 m.px格式 m和p都是整數常量,而x是字母。m和...

格式化輸入輸出

格式化輸入輸出 1.printf flags width prec hil type scanf flag type flag 標誌 含義 左對齊 在前面放 或 space 正數留空 0 0填充 int main width或prec 含義 number 最小字元數 下乙個引數是字元數 number...

格式化輸入輸出

目錄 include int printf const char format,int fprintf file stream,const char format,int dprintf int fd,const char format,int sprintf char str,const char...