1. 程式人生 > 其它 >C語言 十進位制和二進位制相互轉換 - C語言零基礎入門教程

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

目錄

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

一.十進位制和二進位制區別

1、基數不同

十進位制滿10進1;二進位制滿2進1;

2、有效字元不同

十進位制有效字元有10個:0,1,2,3,4,5,5,6,7,8,9;
二進位制有效字元有2個:0,1

3、用途不同

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

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

二.十進位制轉二進位制

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

#include "stdafx.h"
#include "stdio.h"
#include "stdlib.h"

int main()
{
    int num, m, c, i = 0;
    int n = 2;
    int a[32];
    printf("輸入一個整數:");
    scanf_s("%d", &num);
    m = num;
    while (num > 0)
    {
        c = (num % n);
        a[i] = c;
        num = num / n;
        i++;
    }
    printf("十進位制數%d轉換成二進位制數是:", m);
    for (i--; i >= 0; i--)           //將陣列倒序輸出
        printf("%d", a[i]);
    printf("\n");
    system("pause");
    return 0;
}
/*
輸入一個整數:8
十進位制數8轉換成二進位制數是:1000
輸入一個整數:15
十進位制數15轉換成二進位制數是:1111
請按任意鍵繼續. . .
*/

三.二進位制轉十進位制

/******************************************************************************************/
//@Author:猿說程式設計
//@Blog(個人部落格地址): www.codersrc.com
//@File:C語言教程 - C語言 十進位制和二進位制相互轉換
//@Time:2021/06/17 08:00
//@Motto:不積跬步無以至千里,不積小流無以成江海,程式人生的精彩需要堅持不懈地積累!
/******************************************************************************************/
#include "stdafx.h"
#include "stdio.h"
#include "stdlib.h"
#include <math.h>
int main()
{
    long long n, a;
    int sum = 0, i = 0, m;
    printf("輸入一個二進位制數: ");
    scanf_s("%lld", &n);
    a = n;
    while (n != 0)
    {
        m = n % 10;
        n /= 10;
        sum += m*pow(2, i);
        ++i;
    }
    printf("二進位制數 %lld 轉換為十進位制為 %d\n", a, sum);
    system("pause");
    return 0;
}
/*
輸入一個二進位制數: 1000
二進位制數 1000 轉換為十進位制為 8
輸入一個二進位制數: 1110
二進位制數 1110 轉換為十進位制為 14
輸入一個二進位制數: 111111
二進位制數 111111 轉換為十進位制為 63
請按任意鍵繼續. . .
*/

四.猜你喜歡

  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 語言 十進位制和二進位制相互轉換

未經允許不得轉載:猿說程式設計 » C 語言 十進位制和二進位制相互轉換

本文由部落格 - 猿說程式設計 猿說程式設計 釋出!