C 輸出格式

2021-06-02 04:35:48 字數 3280 閱讀 9885

1、 用控制符控制輸出格式

應當注意:這些控制符是在標頭檔案iomanip中定義的,因而程式中應當包含標頭檔案iomanip。通過下面的例子可以了解使用它們的方法,

例2 用控制符控制輸出格式

#include

#include//不要忘記包含此標頭檔案

using namespace std;

int main()

執行結果如下

inputa:34 (輸入a的值)

dec:34 (十進位制形式)

hex:22 (十六進製制形)

oct:42 (八進位制形式)

china (域寬為10)

***** china (域寬為10,空白處以'*'填充)

pi=3.14285714e+00 (指數形式輸出,8位小數)

pi=3.1429e+00) (指數形式輸小,4位小數)

pi=3.143 (小數形式輸出,梢度仍為4)

2.用流物件的成員函式控制輸出格式除了可以用控制符來控制輸出格式外,還可以通過呼叫流物件cout中用於控制輸出格式的成員函式來控制輸出格式。用於控制輸出格式的常用的成員函式見表4。

流成員函式setf和控制符setiosflags括號中的引數表示格式狀態,它是通過格式標誌來指定的。格式標誌在類ios中被定義為列舉值。因此在引用這些格式標誌時要在前面加上類名ios和域運算子「::」。格式標誌見表5。

例3 用流控制成員函式輸出資料。

#include

using namespace std;

int main()

運**況如下:

dec:21 (十進位制形式)

hex:oxl5 (十六進製制形式,以0x開頭)

oct:025 (八進位制形式,以o開頭)

china (域寬為10)

*****china (域寬為10,空白處以'*'填充)

pi=**3.142857e+00 (指數形式輸出,域寬14,預設6位小數)

****3.142857 (小數形式輸㈩,精度為6,最左側輸出數符「+」)

說明:

1、成員函式width(n)和控制符setw(n)只對其後的第乙個輸出項有效。如果要求在輸出資料時都按指定的同一域寬n輸出,不能只呼叫一次width(n),而必須在輸出每一項前都呼叫一次width(n)。

2、在表5中的輸出格式狀態分為5組,每一組中同時只能選用一種(例如,dec,hex和oct中只能選一,它們是互相排斥的),在用成員函式serf和控制符setiosflags設定輸出格式狀態後,如果想改設定為同組的另一狀態,應當呼叫成員函式unsetf(對應於成員函式serf)或resetiosflags(對應於控制符sefiosflags),先終止原來設定的狀態。然後再設定其他狀態。

同理,程式倒數第8行的unsetf函式的呼叫也是不可缺少的。讀者不妨上機試一試。

3、用serf函式設定格式狀態時,可以包含兩個或多個格式標誌,由於這些格式標誌在los類中被定義為列舉值,每乙個格式標誌以乙個二進位代表,因此可以用「位或」運算子「i」組合多個格式標誌

4、可以看到:對輸出格式的控制,既可以用控制符(如例2),也可以用cout流的有關成員函式(如例3),二者的作用是相同的。控制符是在標頭檔案mmamp中定義的,因此用控制符時,必須包含iomanip標頭檔案。cout流的成員函式是在標頭檔案iostream中定義的,因此只需包含標頭檔案iostream,不必包含iomanip。許多程式人員感到使用控制符方便簡單,可以在乙個cout輸出語句中連續使用多種控制符。

5、關於輸山格式的控制,在使用中還會遇到一些細節問題,不可能在這裡全部涉及。在遇到問題時,請查閱專門手冊或上機試驗一下即可解決。

六、用流成員函式put輸出字元

在程式中一般用cout和插入運算子「《如: cout.put('a');

呼叫該函式的結果是在螢幕上顯示乙個字元a。put函式的引數可以是字元或字元的ascii**(也可以是乙個整型表示式)。如: cout.put(65+32);

也顯示字元a,因為97是字元a的ascii**。

可以在乙個語句中連續呼叫put函式。如

cout.put(71),put(79).put(79).put(68).put('\n');

在螢幕上顯示good。

例4 有乙個字串"basic",要求把它們按相反的順序輸出。

程式如下:

#include

using namespace std;

int main()

執行時在螢幕上輸出:

cisab

例4也可以改用putchar函式實現。程式如下:

#include//也可以用#include,同時不要下一行

usmg namespace std;

int main()

執行結果與前相同,成員函式put不僅可以用cout流物件來呼叫,而且也可以用ostream類的其他流物件呼叫。

C 輸出格式

cout.precision 設定小數點後精確度,cout.width 設定寬度,cout.setf 設定顯示格式,比如 cout.setf ios left 左對齊 cout.setf ios showpoint 不管是否有小數字,顯示小數點 cout.fill 不足寬度則填充,如cout.fil...

C 輸出格式

一 標準輸入函式cin 不知道說它是個函式對還是不對,它是代表標準的輸入裝置 鍵盤。他是屬於流的,他的用法和流的用法是一樣的。也就是 cin 變數 小小的說明一下,輸入多個變數可以寫在一行,如 cin x y z 這樣寫不是不允許,而是不好看,如果是不同的變數型別,那就更是沒頭沒腦了。除了你,人家是...

C 輸出格式

using system using system.collections.generic using system.linq using system.text using system.threading.tasks 花費了x元 name 左對齊 console.writeline 花費了x元 ...