printf 和scanf的用法(最終版)
一 格式化輸入函數scanf
scanf 函數的功能是格式化輸入任意數據列表,其一般調用格式為:
scanf(格式控制符,地址列表)
【說明】
?。?)地址列表中給出各變量的地址,可以為變量的地址,以&開頭,也可以為數組,字符串的首地址。
?。?)格式控制符由%和格式符組成,作用是將要輸入的字符按指定的格式輸入如%d,%c等。
| 格式符 | 說明 |
| d(或 i ) |
以帶符號的十進制形式輸出整數,正數的( + )號省略不輸出。 |
| u | 以無符號十進制形式輸出整數。 |
| x( 或X ) | 以十六進制無符號形式輸出整數。(不輸出前導符 0x ). |
| o ( 字母 ) | 以八進制無符號形式輸出整數。(不輸出前導符數字 0 ). |
| c | 輸出一個字符。 |
| s | 輸出字符串。 |
| f |
以小數形式輸出單,雙精度,隱含輸出6位小數。 |
| e( 或E ) | 以指數形式輸出單,雙精度,隱含輸出6位小數。 |
| g( 或G ) | 自動選用( %f )( %e)或( %E)格式中輸出寬度較小的一種使用 |
scanf 函數的附加格式說明符
| 附加格式 | 說明 |
| l(字母) | 用于長整型數(%ld、%lo、%lx)或double型實數(%lf、%le) |
| h | 用于短整型數(%hd、%ho、%hx) |
| 域寬(一個整數) | 指定輸入所占列寬 |
| * | 表示對應輸入量不賦給一個變量 |
二、格式化輸出函數printf
printf函數的功能是格式化輸出任意數據列表,其一般調用格式為:
printf(格式控制符,輸出列表)
printf函數的格式符
| 格式符 | 說明 |
|
d(或i) |
以帶符號的十進制形式輸出整數,正數的(+)號不能省略不輸出 |
| u | 以無符號十進制形式輸出整數 |
| o(字母) |
以八進制無符號形式輸出整數(不輸出前導符0) |
| c | 輸出一個字符 |
| s | 輸出字符串 |
| f | 以小數形式輸出單、雙精度,隱含輸出6位小數 |
| e(或E) | 以指數形式輸出單、雙精度,隱含輸出6位小數 |
| g(或G) | 自動選用%f、%e或%E格式中輸出寬度較小的一種使用 |
| x(或X) | 以十六進制無符號形式輸出整數(不輸出前導符0x) |
| 參數 | 說明 |
| %d | 輸出數字長為變量數值的實際長度 |
| %md | 輸出m位(不足補空格,大于m位時按實際長度輸出),cout可以用setw來控制場寬 |
| %-md | m含義同上。左對齊輸出 |
| %ld | l(小寫字母)表示輸出“長整型”數據 |
| %mld | 指定長整型輸出寬度m位,左邊補空格;否則,按實際位數輸出 |
| %0md,%0m1d | 0(數字0)表示位數不足m時補0 |
| %f | 以小數形式輸出雙精度,隱含輸出6位小數 |
| %mlf | 以小數形式輸出雙精度,指定輸出m位小數 |

浙公網安備 33010602011771號