十六進製制轉八進位制

2021-09-10 15:07:38 字數 601 閱讀 4197

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

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

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

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

輸入:2

39123abc

輸出:71

4435274

先將十六進製制轉換為十進位制,再將十進位制轉換為八進位制。

十六進製制中abcdef轉化為十進位制的方法為:『字母』-『a』+10

字串中數字轉化為十進位制的方法:『數字』-『0』

#include#include#includeusing namespace std;

int main()

//將十六進製制轉化為十進位制

if(sum!=0) //這裡需要判斷一下輸入的數字是不是0,如果是0的話while會死迴圈,所以需要加乙個if

for(int i=d.size()-1;i>=0;i--)

cout

cout<} return 0;

}

十六進製制轉八進位制

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

十六進製制轉八進位制

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

十六進製制轉八進位制

資料很大 因此直接考慮用字串陣列來儲存十六進製制和八進位制 先根據 四位一體 的方法將十六進製制轉化為二進位制,而後根據 三位一體 將二進位制轉化為八進位制。include includeint main else if a i 1 else if a i 2 else if a i 3 else ...