10進製數轉換成16進製制

2021-07-12 00:03:33 字數 977 閱讀 1277

十六進製制的元素個數固定,而且還有對應編號,可以用查表法.乙個int型別十進位制數在32位作業系統中佔4個位元組,32位2進製數取它的低8位,例如60,在記憶體中以二進位制數0011 1100存放,而乙個十六進製制數中每一位數對應二進位制中4位數,因此可以將十進位制數與f進行「與(&)」運算,得出低四位(十六進製制中的最低位),然後左移4位繼續與f與運算,得出十六進製制數的所有位數,然後存在乙個陣列中,儲存的是它從最低位到最高位的所有數,由於順序是逆的,因此輸出時應該去零逆置加上字首0x輸出。

class arraytohex 

/* * 需求:十進位制轉十六進製制 思路:十六進製制的元素個數固定,而且還有對應編號,可以用查表法.乙個int型別

* 十進位制數在32位作業系統中佔4個位元組,32位2進製數取它的低8位,例如60,在記憶體 中以二進位制數0011

* 1100存放,而乙個十六進製制數中每一位數對應二進位制中4位數, 因此可以將十進位制數與f進行「與(&)」運算,得出低四位(十六進製制中的最低位),

* 然後左移4位繼續與f與運算,得出十六進製制數的所有位數,然後存在乙個陣列中,去零逆置輸出

*/public static string tohex(int num) ;

// 2.建立儲存十六進製制數的低8位數的臨時容器

char arr = new char[8];

// 3.建立操作容器中十六進製制數每一位數的下標

int index = arr.length;

// 4.通過迴圈對num進行&f,>>>4的操作

while (num != 0)

// 8.呼叫方法,將陣列轉換成字串輸出

return "0x" + tostring(arr, index);

} // 9.定義乙個方法,將陣列轉換成字串

public static string tostring(char arr, int index)

return temp;

}}

10制轉換成16進製制

實現如下 using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.linq using system.t...

C 10進製轉換成2進製 8進製 16進製制

evelyn 今天是做京東的筆試題,簡直又是被扼殺在搖籃裡了,是乙個求取幸運數的題目,即乙個十進位制的數如果各個位數的值相加與轉換成2進製後1的位數相等,即這個數為幸運數。也是由於一時緊張沒有想到,只想著有沒有函式可以進行進製之間的轉換,沒有想到自己去寫,確實有乙個函式itoa,itoa value...

10進製數轉換成2進製數

2.十進位制轉換成二進位制 演算法 利用while語句 當所輸入的數不為1時,執行while迴圈 在while迴圈中將輸入的數插入順序棧中 只支援整形資料 include using namespace std const int stacksize 10 class seqstack seqsta...