C語言 十進制和十六進制相互轉換 - C語言零基礎入門教程


目錄

零基礎 C/C++ 學習路線推薦 : C/C++ 學習目錄 >> C 語言基礎入門

一.十進制和十六進制區別

1、基數不同

十進制滿10進1;
十六進制滿F進1;

2、有效字符不同

十進制有效字符有10個:0,1,2,3,4,5,5,6,7,8,9; //最大值是9
十六進制有效字符有16個:0,1,2,3,4,5,5,6,7,8,9,A,B,C,D,E,F  //最大值是F

十進制中的10等於在十六進制中的A;
十進制中的11等於在十六進制中的B;
十進制中的12等於在十六進制中的C;
十進制中的13等於在十六進制中的D;
十進制中的14等於在十六進制中的E;
十進制中的15等於在十六進制中的F;

3、用途不同

計算機只能用二進制存儲和運算,在設計程序時二進制不容易讀,所以可以采用八進制和十六進制來幫助編程,計算機再翻譯成二進制數來用。

C / C++編程中比較常用的是:十進制、二進制、八進制、十六進制,其中八進制也用得比較少。

二.十進制轉十六進制

/******************************************************************************************/
//@Author:猿說編程
//@Blog(個人博客地址): www.codersrc.com
//@File:C語言教程 - C語言 十進制和十六進制相互轉換
//@Time:2021/06/17 08:00
//@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!
/******************************************************************************************/

#include<stdlib.h>
#include<stdio.h>

void main()
{
    char arr[] = "0123456789ABCDEF";
    char hex[16];
    int i = 0;
    int j = 0;
    int num = 0, a = 0;
    printf("輸入一個整數:");
    scanf_s("%d", &num);
    a = num;
    while (num)
    {
        hex[i++] = arr[num % 16];   //對十進制數求余並最終與hextable數組中的字符匹配
        num = num / 16;
    }
    printf("十進制數%d轉換成十六進制數是:", a);
    for (j = i - 1; j >= 0; --j)
        printf("%c", hex[j]);
    printf("\n");
    system("pause");
}
/*
輸出:
輸入一個整數:60
十進制數60轉換成十六進制數是:3C
輸入一個整數:123
十進制數123轉換成十六進制數是:7B
輸入一個整數:16
十進制數16轉換成十六進制數是:10
*/

三.十六進制轉十進制

/******************************************************************************************/
//@Author:猿說編程
//@Blog(個人博客地址): www.codersrc.com
//@File:C語言教程 - C語言 十進制和十六進制相互轉換
//@Time:2021/06/17 08:00
//@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!
/******************************************************************************************/

#include<stdlib.h>
#include<stdio.h>
void main()
{
    int num = 0;
    printf("輸入一個十六進制數: ");
    scanf_s("%x", &num);
    printf("十六進制數 %x 轉換為十進制為 %d\n", num, num);
    system("pause");
}
/*
輸出:
輸入一個十六進制數: 30
十六進制數 30 轉換為十進制為 48
輸入一個十六進制數: 10
十六進制數 10 轉換為十進制為 16
*/

四.猜你喜歡

  1. 安裝 Visual Studio
  2. 安裝 Visual Studio 插件 Visual Assist
  3. Visual Studio 2008 卸載
  4. Visual Studio 2003/2015 卸載
  5. C 語言格式控制符/占位符
  6. C 語言邏輯運算符
  7. C 語言三目運算符
  8. C 語言逗號表達式
  9. C 語言 數組遍歷
  10. C 語言 數組排序 – 冒泡法排序
  11. C 語言 數組排序 – 選擇法排序
  12. C 語言 數組排序 – 插入法排序
  13. C 語言 數組排序 – 快速法排序
  14. C 語言 數組下標越界
  15. C 語言 數組內存溢出
  16. C 語言 數組下標越界和內存溢出區別
  17. C 語言 二維數組定義和使用
  18. C 語言 二維數組行數和列數計算
  19. C 語言 指針聲明和定義
  20. C 語言 指針 p++ / p–
  21. C 語言 十進制和二進制相互轉換
  22. C 語言 十進制和十六進制相互轉換

未經允許不得轉載:猿說編程 » C 語言 十進制和十六進制相互轉換

本文由博客 - 猿說編程 猿說編程 發布!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM