Trick 1.8 - 格式輸出 printf

基本的用法不外乎就是以 % 後面接上各種指示符號1例如整數的 %d、浮點數的 %f、科學記號的 %e、字元的 %c、字串的 %s、指標的 %p。外加上各種格式化的標示。

比方說如果要限制長度,置左或置右就可以在中間加上一個數字表示該格式輸出的最小寬度。例如 %3d 表示至少輸出 3 位數。

此外還有一些 flag 諸如 +, -, 0, #, 分別表示正負號、是否置左、是否補零、是否加上小數點或前置 0(八進位), 0x(十六進位)、以空白取代正號。

關於 printf 個人覺得在比賽中最厲害的一點是「可變寬度」設計,例如我們可以利用一個整數來指定寬度,這點在大數運算的輸出時相當方便,例如 %0*d,後面所接的第一個參數就是寬度啦。

Note

浮點數在 printf 的輸出只有一種:%f,請不要使用 %lf(那是用來讀入 double 的)。不過,如果要輸出 long double 型態的浮點數,請用 %Lf

參考資料

1. http://www.cplusplus.com/reference/cstdio/printf/

results matching ""

    No results matching ""