C 標準輸入輸出格式控制(進製)

2021-07-13 09:37:14 字數 1532 閱讀 7521

從hdu--2057題說起

能使輸出的十六進製制字母變成大寫  ( uppercase變成lowercase,大寫變小寫)

#include #include using namespace std;

int main()

cout<

總結:

1、數的進製

預設進製

預設狀態下,資料按十進位制輸入輸出。如果要求按八進位制或十六進製制輸入輸出,在cin或cout中必須指明相應的資料形式,oct為八進位制,hex為十六進製制,dec為十進位制。

舉例

int i, j, k, l;

cout<oct>>i; //輸入為八進位制數

cin>>hex>>j; //輸入為十六進製制數

cin>>k; //輸入仍為十六進製制數

cin>>dec>>l; //輸入為十進位制數

cout

//恢復十進位制輸出狀態

hex:i=1a

dec:j=63 k=160

oct:l=21

幾點說明:使用不帶.h的標頭檔案時,必須在cin中指明數制,否則從鍵盤輸入時,不認八進位制和十六進製制數開頭的0和0x標誌。指明後可省略0和0x標誌。

進製控制只適用於整型變數,不適用於實型和字元型變數。

輸入資料的格式、個數和型別必須與cin中的變數一一對應,否則不僅使輸入資料錯誤,而且影響後面其他資料的正確輸入。

在cin或cout中指明數制後,該數制將一直有效,直到重新指明使用其他數制。

◆   2、資料間隔

常用設定方法:輸出空格符或回車換行符。

指定資料輸出寬度:用c++提供的函式setw()指定輸出資料項的寬度。setw()括號中通常給出乙個正整數值,用於限定緊跟其後的乙個資料項的輸出寬度。如:setw(8)表示緊跟其後的資料項的輸出佔8個字元寬度。

舉例

int i=2, j=3;

float x=2.6, y=1.8;

cout

說明

如果資料的實際寬度小於指定寬度,按右對齊的方式在左邊留空,如果資料的實際寬度大於指定寬度,則按實際寬度輸出,即指定寬度失效。

setw()只能限定緊隨其後的乙個資料項,輸出後即回到預設輸出方式。

使用setw()必須在程式開頭再增加一句:#include

c 輸入輸出格式控制

使用這些格式需要宣告包含 long flags const 返回當前的格式標誌。long flays long newflag 設定格式標誌為newflag,返回舊的格式標誌。long setf long bits 設定指定的格式標誌位,返回舊的格式標誌。long setf long bits,lo...

C語言輸入輸出格式

c 字元 d 有符號十進位制整數 f 浮點數 o 八進位制整數 x 十六進製制整數 s 字串 m指定資料寬度,n指定小數字數 例 include 指定資料寬度為20位,小數字數15位,可以看出,整數部分33前面還有兩個空格。算上小數點一共是20個位置。另 在用 f輸出時要注意資料本身能提供的有效數字...

c語言中輸入輸出格式的控制

一 輸入格式的控制 scanf函式中格式字元 1 d,i 用來輸入有符號的十進位制中 2 u 用來輸入無符號的十進位制整數 3 o 用來輸入無符號的八進位制整數 4 x,x 用來輸入無符號的十六進製制整數 大小寫作用相同 5 c 用來輸入單個符號 6 s 用來輸入字串,將字串送到乙個字元陣列中,在輸...