回覆列表
  • 1 # 使用者3977671246998

    思路:十進位制整數轉換為十六進位制整數採用"除16取餘,逆序排列"法。

    具體做法是:用16整除十進位制整數,可以得到一個商和餘數;再用16去除商,又會得到一個商和餘數,如此進行,直到商為0時為止,然後把先得到的餘數作為十六進位制數的低位有效位,後得到的餘數作為十六進位制數的高位有效位,依次排列起來。

    參考程式碼:

    #include "stdio.h"

    int main()

    {

    int num,a[100],i=0,m=0;

    char hex[16]={"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"};

    scanf("%d",&num);

    while(num>0)

    {

    a[i++]=num%16;

    num=num/16;

    }

    printf("轉化為十六進位制的數為:");

    for(i=i-1;i>=0;i--)//倒序輸出

    {

    m=a[i];

    printf("%c",hex[m]);

    }

    printf("\n");

    }

    /*

    執行結果:

    17

    轉化為十六進位制的數為:11

    */

  • 中秋節和大豐收的關聯?
  • 在Excel中的公式運算結果如何轉換為文字格式?