BASIC-10基礎練習 十進位制轉十六進位制
阿新 • • 發佈:2018-12-27
基礎練習 十進位制轉十六進位制
時間限制:1.0s 記憶體限制:512.0MB
錦囊1
按除16取餘倒數(也可使用格式輸出)。
錦囊2
可以使用遞迴來處理,遞迴引數為要轉換的數字,如果該數字大於等於16,則將遞迴處理該數整除16的值,然後再輸出最後一位。 C/C++語言可以使用格式輸出直接輸出轉換後的結果。
問題描述
十六進位制數是在程式設計時經常要使用到的一種整數的表示方式。它有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
#include <iostream>
#include <cstdio>
using namespace std;
int main(int argc, char *argv[]) {
int i=0;
cin>>i;
printf("%X",i);
return 0;
}
#include <iostream> #include <cstdio> using namespace std; void toHex(int i){ if(i/16!=0){ toHex(i/16); } if(i%16<10){ cout<<char(i%16+'0'); }else{ cout<<char(i%16+'A'-10); } } int main(int argc, char *argv[]) { int i=0; cin>>i; toHex(i); return 0; }