藍橋杯 基礎練習 十六進製制轉八進位制

2021-10-01 12:14:23 字數 1050 閱讀 6868

【問題描述】

給定n個十六進製制正整數,輸出它們對應的八進位制數。

【輸入格式】

輸入的第一行為乙個正整數n (1<=n<=10)。

接下來n行,每行乙個由0~9、大寫字母a~f組成的字串,表示要轉換的十六進製制正整數,每個十六進製制數長度不超過100000。

【輸出格式】

輸出n行,每行為輸入對應的八進位制正整數。

【注意

輸入的十六進製制數不會有前導0,比如012a。

輸出的八進位制數也不能有前導0。

【樣例輸入】239

123abc

【樣例輸出】

714435274

提示】

先將十六進製制數轉換成某進製數,再由某進製數轉換成八進位制。

【思路】

先將十六進製制轉換成二進位制,十六進製制的每一位數轉換成二進位制有四位,之後轉化成八進位制,八進位制中的每一位數轉化成二進位制有三位,轉化過程中,不夠三位的話,前面補 0 ;最後輸出如果有前導 0,要去掉;

【ac**】

#include#include#includeusing namespace std;

maps8;

string s16[16] = ;

int main()

else

} if(a.length()%3 == 1)

else if(a.length()%3 == 2)

int flag = 0;

for(int j = 0; j < a.length(); j+=3)

if(flag==1 && j==3 && t=="0")

cout << t;

} cout << endl;

} return 0;

}

基礎練習 十六進製制轉八進

問題描述 給定n個十六進製制正整數,輸出它們對應的八進位制數。輸入格式 輸入的第一行為乙個正整數n 1 n 10 接下來n行,每行乙個由0 9 大寫字母a f組成的字串,表示要轉換的十六進製制正整數,每個十六進製制數長度不超過100000。輸出格式 輸入的十六進製制數不會有前導0,比如012a。樣例...

藍橋杯練習 基礎練習 十六進製制轉八進位制

題目鏈結 時間限制 1.0s 記憶體限制 512.0mb 問題描述 給定n個十六進製制正整數,輸出它們對應的八進位制數。輸入格式 輸入的第一行為乙個正整數n 1 n 10 接下來n行,每行乙個由09 大寫字母af組成的字串,表示要轉換的十六進製制正整數,每個十六進製制數長度不超過100000。輸出格...

藍橋杯 基礎練習 十六進製制轉八進位制

問題描述 給定n個十六進製制正整數,輸出它們對應的八進位制數。輸入格式 輸入的第一行為乙個正整數n 1 n 10 接下來n行,每行乙個由0 9 大寫字母a f組成的字串,表示要轉換的十六進製制正整數,每個十六進製制數長度不超過100000。輸出格式 輸出n行,每行為輸入對應的八進位制正整數。注意 輸...