藍橋杯 十進位制轉十六進製制

2021-08-17 23:17:36 字數 1809 閱讀 3422

十進位制轉十六進製制

問題描述

十六進製制數是在程式設計時經常要使用到的一種整數的表示方式。它有0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f共16個符號,分別表示十進位制數的0至15。十六進製制的計數方法是滿16進1,所以十進位制數16在十六進製制中是10,而十進位制的17在十六進製制中是11,以此類推,十進位制的30在十六進製制中是1e。

給出乙個非負整數,將它表示成十六進製制的形式。

輸入格式

輸入包含乙個非負整數a,表示要轉換的數。0<=a<=2147483647

輸出格式

輸出這個整數的16進製表示

樣例輸入

30樣例輸出

1e思路:將十進位制->二進位制->十六進製制

入坑:1.轉換為二進位制後每四位每四位進行轉換成十六進製制,當剩下的不足四位時,應當跳出,再對剩餘的3 2 1 進行討論

#include#include#include#include#includeusing namespace std;

const int max=500005;

int arr[max];

char str[55], str1[505],str2[505];

string getbin(int num)else

num/=2;

} return str;

}int main()

else if(s[i]=='1'&&s[i+1]=='0'&&s[i+2]=='0'&&s[i+3]=='0')else if(s[i]=='0'&&s[i+1]=='1'&&s[i+2]=='0'&&s[i+3]=='0')else if(s[i]=='1'&&s[i+1]=='1'&&s[i+2]=='0'&&s[i+3]=='0')else if(s[i]=='0'&&s[i+1]=='0'&&s[i+2]=='1'&&s[i+3]=='0')else if(s[i]=='1'&&s[i+1]=='0'&&s[i+2]=='1'&&s[i+3]=='0')else if(s[i]=='0'&&s[i+1]=='1'&&s[i+2]=='1'&&s[i+3]=='0')else if(s[i]=='1'&&s[i+1]=='1'&&s[i+2]=='1'&&s[i+3]=='0')else if(s[i]=='0'&&s[i+1]=='0'&&s[i+2]=='0'&&s[i+3]=='1')else if(s[i]=='1'&&s[i+1]=='0'&&s[i+2]=='0'&&s[i+3]=='1')else if(s[i]=='0'&&s[i+1]=='1'&&s[i+2]=='0'&&s[i+3]=='1')else if(s[i]=='1'&&s[i+1]=='1'&&s[i+2]=='0'&&s[i+3]=='1')else if(s[i]=='0'&&s[i+1]=='0'&&s[i+2]=='1'&&s[i+3]=='1')else if(s[i]=='1'&&s[i+1]=='0'&&s[i+2]=='1'&&s[i+3]=='1')else if(s[i]=='0'&&s[i+1]=='1'&&s[i+2]=='1'&&s[i+3]=='1')else if(s[i]=='1'&&s[i+1]=='1'&&s[i+2]=='1'&&s[i+3]=='1')

}else 

break;

} // cout<<"i:"}else if(i==2)else if(s[len-2]=='1'&&s[len-1]=='0')else if(s[len-2]=='0'&&s[len-1]=='1')else if(s[len-2]=='1'&&s[len-1]=='1')

}else if(i==1)

// cout<=0;i--)

cout<

}

藍橋杯 十進位制轉十六進製制

問題描述 十六進製制數是在程式設計時經常要使用到的一種整數的表示方式。它有0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f共16個符號,分別表示十進位制數的0至15。十六進製制的計數方法是滿16進1,所以十進位制數16在十六進製制中是10,而十進位制的17在十六進製制中是11,以此類推...

藍橋杯 十進位制轉十六進製制

基礎練習 十進位制轉十六進製制 時間限制 1.0s 記憶體限制 512.0mb 問題描述 十六進製制數是在程式設計時經常要使用到的一種整數的表示方式。它有0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f共16個符號,分別表示十進位制數的0至15。十六進製制的計數方法是滿16進1,所以十...

藍橋杯 十六進製制轉十進位制

十六進製制轉十進位制 問題描述 從鍵盤輸入乙個不超過8位的正的十六進製制數字串,將它轉換為正的十進位制數後輸出。注 十六進製制數中的10 15分別用大寫的英文本母a b c d e f表示。樣例輸入 ffff 樣例輸出 65535 思路 十六進製制轉換為二進位制,二進位制計算十進位制 進坑點 inc...