進製轉換(16轉8)

2021-10-08 03:02:18 字數 884 閱讀 7065

問題描述

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

輸入格式

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

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

輸出格式

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

【注意

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

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

樣例輸入239

123abc

樣例輸出

714435274

***【*提示

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

ps:用的網上找到的寫法,直接列舉

#include

#include

#define n1 100000

/*16進製制*/

#define n2 400008

/*2進製*/

intmain

(void

)else

if(len%3==

2)for(j =

0; j < len ; j ++

, k +=4

)}for(j =

0, flag =

0; j < k ; j +=3

)if(flag)

}printf

("\n");

}return0;

}

16進製制轉8進製

很有意思。開始沒注意題直接 x o 然後看到了 這個16進製制的數長度不超過100000 妥妥又是高精度問題。還有個錯誤就是把二進位制左右反了,導致半天找不出錯。然後就把二進位制打出來,找到了。大體思路就是16 2 8 如 f 1111 17 ff 1111 1111 011 111 111 377...

16進製制轉8進製

16進製制轉8進製 思路 16進製制轉成2進製串,2進製串從後每3位轉成8進製串 include include define maxn 10 define maxlength 100000 int main else bi k 0 if temp 4 else bi k 0 if temp 2 e...

藍橋杯 16轉換8進製

在題目錦囊中有提到,咱們可以通過2進製為媒介,達到16轉8的目的。在學習數電邏輯之後,咱們也都知道,1位16進製制可以代表4位2進製,1位8進製可以代表3位二進位制,為此我的 大題思路就出來了,字串儲存,3位16進製制求和入棧輸出表示4位8進製,然後出棧輸出,於是有了我最開始的 include in...