C 語言之進位轉換

2021-03-02 wmding

C語言進位轉換學不會,看了這個教程,你還算是學不會的話,來找我!!!

進位介紹

對於整數,有4種表示方式:


舉例說明:

int num = 210;//十進位

int num2 = 01010;//八進位

int num3 = 0x1010;// 十六進位


二進位轉換成十進位

規則:從最低位開始(從右到左),將每個位上的數提取出來,乘以2的(位數-1)次方,然後求和。


二進位 1011 轉換成十進位:

二進位 1011 = 1 * 2^0 + 1 * 2^1 + 0 * 2^2 + 1 * 2^3 = 1 + 2 + 0 + 8 = 11



八進位轉換成十進位

規則:從低位開始,將每個位上的數提取出來,乘以8的(位數-1)次方,然後求和


八進位0123轉換成十進位:

0123 = 3 * 8^0 + 2 * 8^1 + 1 * 8^2 = 3 + 16 + 64 = 83



十六進位轉換成十進位

規則:從最低位開始,將每個位上的數提取出來,乘以16的(位數-1)次方,然後求和


將 0x34A 轉換成十進位:

0x34A = 10 * 16^0 + 4 * 16^1 + 3 * 16^2 = 10 + 64 + 768 = 842



十進位轉換成二進位

規則:將該數不斷除以2,直到商為0 為止。然後將每步得到的餘數倒過來,就是對應的二進位


將 56 轉成二進位:


十進位轉換成八進位

規則:將該數不斷除以8,直到商為0為止,然後將每步得到的餘數倒過來,得到對應的八進位


156 轉換成八進位為:234


十進位轉換成十六進位

規則:將該數不斷除以16,直到商為0為止,然後將每步得到的餘數倒過來,得到對應的十六進位


356 轉換成十六進位為:0x164



二進位轉換成八進位

規則:從低位開始,將二進位數每三位一組(二進位111表示7),轉成對應的八進位數即可。八進位是以 0 開頭。


11010101 轉換成八進位:0325



二進位轉換成十六進位

規則:從低位開始,將二進位每四位一組(二進位1111表示0xF),轉成對應的十六進位即可


11010101 轉換成十六進位:0xD5 。0101 為5,1101 為 13,對應著十六進位的D


八進位轉換成二進位

規則:將八進位數每1位,轉換成對應的一個3位的二進位數即可。

將 0237 轉成二進位:10 011 111


或者直接先把八進位的數轉換成十進位,然後再轉換成二進位。

1、將八進位的0237轉換為十進位:7*8^0 + 3*8^1 + 2*8^2 = 159

2、將十進位的159轉換為二進位:10011111


十六進位轉換成二進位

規則:將十六進位每1位,轉換成對應的4位的一個二進位數即可。

將 0x23B 轉換成二進位:10 0011 1011




相關焦點

  • C語言閱讀題中的進位轉換
    C語言閱讀題中的進位轉換近期做了一道閱讀題,裡面涉及十進位,二進位,八進位,十六進位的轉換。這是每年春考必考的題目。
  • C語言實現任意進位轉換代碼及解析
    問題分析掌握不同數制間的轉換關係是解決問題的關鍵,這裡所說的數制一般包括二進位、八進位、十六進位及十進位。除了不同的數制還有下面幾個必須要了解的概念。基數:在一種數制中,只能使用一組固定的數字來表示數的大小,這組固定的數字的個數就稱為該計數制的基數(Base)。例如十進位的基數為10,二進位的基數為2等。
  • C語言中char int轉換問題
    printf("%d", a[0]-0);//輸出結果為32,int轉化為char*********************************** linux c ***********************************(1)字符串轉換成數字,用atoi,atol,atof,分別對應的是整型,long
  • 二進位-八進位-十進位-十六進位之間的相互轉換
    10年前,在大學裡學習了數字電路,課本中講到了進位之間的相互轉換,最近用到數字晶片74HC125,涉及到TTL-CMOLS
  • C語言實現十進位轉2~16進位、十六進位轉十進位
    1、十進位轉2~16進位【問題描述】從鍵盤輸入十進位整數num及轉換的進位數base,將整數num轉換為base進位(base方法為:十進位數除base取餘法,即十進位數除以base,餘數為權位上的數,得到的商值繼續除以base,依此步驟繼續向下運算直到商為0為止。
  • BASIC-12十六進位轉換為八進位
    題目問題描述給定n個十六進位正整數,輸出它們對應的八進位數。輸入格式輸入的第一行為一個正整數n (1<=n<=10)。接下來n行,每行一個由09、大寫字母AF組成的字符串,表示要轉換的十六進位正整數,每個十六進位數長度不超過100000。
  • 學校裡學不到的C語言教程之10:一定要會的移位和16進位轉換原理
    " 編碼這樣的實現在 C 語言中通常不可能用這樣的函數去轉換 16 進位的,原因只有一個:性能問題。因為一般用 C 語言實現都是衝著高性能去的,等等,就算是 java 語言,早年我看到的 "base64" 相關編解碼函數也是自己實現的16進位轉換。
  • c語言之符號的技巧
    C語言中的單引號用來表示字符常量C語言中的雙引號用來表示字符串常量『a』表示字符常量在內存中佔1個字節
  • 零基礎學編程之進位轉換基礎
    十進位和二進位可以相互轉換,如下所示:c。,直接轉換既可那1111 1001,表示的十進位數是多少?則計算機中存儲的1111 1001轉換為十進位數是-7。反過來的換算過程如下:計算機中二進位(轉)十進位:以0開頭的,直接將2進位轉換為10進位;以1開頭的,需要4步,按位取反->末尾位加1->轉換為十進位->添加負號。
  • 單片機C語言開發離不開它——秒懂二進位和十六進位
    單片機C語言開發離不開它--秒懂二進位和十六進位作為單片機愛好者,入門學習單片機編程一定要學會進位的基本概念,常見的有(二進位、八進位、十進位、十六進位),今天於曉超帶大家入門一下單片機C語言編程的二進位和十六進位(技術文章閱讀量慘澹,希望大家能夠點讚收藏加轉發
  • 關於二進位、十進位、八進位、十六進位數據轉換計算方法詳細總結
    (2) 二進位轉換為十進位 不分整數和小數部分 方法:按權相加法,即將二進位每位上的數乘以權,然後相加之和即是十進位數。例 將二進位數101.101轉換為十進位數。(1)十進位轉換為八進位 十進位轉換成八進位有兩種方法: 1)間接法:先將十進位轉換成二進位,然後將二進位又轉換成八進位 2)直接法:前面我們講過,八進位是由二進位衍生而來的,因此我們可以採用與十進位轉換為二進位相類似的方法,還是整數部分的轉換和小數部分的轉換
  • 二進位與十進位的轉換方法
    二、轉換方法    十進位數轉換為二進位數時,由於整數和小數的轉換方法不同,所以先將十進位數的整數部分和小數部分分別轉換後,再加以合併。1、十進位整數轉換為二進位整數案例1:十進位小數轉換成二進位小數採用"乘2取整,順序排列"法。
  • C語言常用的進位轉換工具函數盤點!爺爺再也不用擔心我不會進位...
    01 字符串轉十六進位 代碼實現: 04 十進位轉字符串 如果只是單個十進位轉字符串,使用sprintf函數就可以了。 如果是十進位數組:
  • 計算機進位的轉換
    所以我們就得學會進位的轉換,輸入計算機能聽懂的語言,這樣計算機才能聽懂我們說話,今天我們就學習一下進位的轉換和補碼反碼的計算。1、 最常見的是十進位轉換成二進位,主要有三種方法:比如我們吧十進位的45,轉換成二進位:(1)、方法1除2取餘,最後結果是101101如下圖所示(從下往上讀):(2)、我們也可以採用8421碼進行計算,如下圖所示
  • C語言基礎知識整理
    4、在{  }裡面每一句話後面都有一個分號(;),在c語言中,我們把以一個分號結尾的一句話叫做一個c語言的語句,分號是語句結束的標誌。這一行沒有分號,所以不是語句,在c語言中稱之為命令行,或者叫做「預編譯處理命令」。
  • C語言小白學習――數據類型的轉換及轉換規則
    如果右邊量的數據類型長度左邊長時,將丟失一部分數據2.C語言轉換規則:(1)整數和浮點型:浮點型轉換成整型時,小數部分被省略,如果其值不能被整型表示,則其行為未定義。注意:將負的浮點型轉換成unsigned int 結果是沒有定義的。當把整型轉換成浮點型時,如果該值是在可表示範圍內,則結果可能是下一個較高或者較低的可表示值。
  • 6、計算機進位之二進位、十進位、十六進位之間的轉換
    4、進位之間的轉換4.1、正整數的十進位轉換二進位將一個十進位數除以二,得到的商再除以二,依此類推直到商等於一或零時為止,倒取除得的餘數,即換算為二進位數的結果4.2、二進位轉換為十進位二進位轉十進位的轉換原理:從二進位的右邊第一個數開始,每一個乘以2的n次方,n從0開始,每次遞增1。然後得出來的每個數相加即是十進位數。
  • C語言編程預備知識-進位和常量
    C語言編程預備知識-進位和常量什麼是進位?進位也就是進位計數制,是人為定義的帶進位的計數方法進位制計數法是一種記數方式,故亦稱進位記數法計數法,可以用有限的數字符號代表所有的數值。二進位數的加法和乘法基本運算法則和各進位間的書寫,如下:3)二進位天然兼容邏輯運算。但是,二進位計數在日常使用上有個不便之處,就是位數往往很長,讀寫不便,所以計算機領域我們實際採用的是十六進位。
  • C語言入門基礎知識大全
    用一個簡單的c程序例子,介紹c語言的基本構成、格式、以及良好的書寫風格,使小夥伴對c語言有個初步認識。、任何一個c語言程序都必須包括以下格式:main() { }——這是c語言的基本結構,任何一個程序都必須包含這個結構。
  • 進位轉換
    N=a n-1*p n-1+a n-2*p n-2+…+a2*p2+a1*p1+a0*p02、十進位數與P進位數之間的轉換①十進位轉換成二進位:十進位整數轉換成二進位整數通常採用除2取餘法,小數部分乘2取整法。