關於八進位轉十進位的程式碼

八進位轉十進的程式碼到底怎麼寫阿?

如果有人會

可以盡快幫我解答嗎?

謝謝!!

2 個解答

評分
  • 1 0 年前
    最佳解答

    給你8-10-16進位的程式吧....自己看看囉

    #include<stdio.h>

    int main()

    {

    int N;

    int i;

    int Count;

    int NumericalBit = (8 * sizeof(N)) - 1;

    int Testbit;

    printf("請輸入要轉換的原本型式1.十六進位 2.十進位 3.八進位:") ;

    scanf("%d",&i);

    if (i==1)

    {

    printf("請輸入轉換的數字: ");

    scanf("%x",&N);

    printf("十六進位(%x)=>十進位(%d)=>八進位(%o)=>二進位(",N,N,N);

    }

    else if (i==2)

    {

    printf("請輸入轉換的數字: ");

    scanf("%d",&N);

    printf("十進位(%d)=>十六進位(%x)=>八進位(%o)=>二進位(",N,N,N);

    }

    else if (i==3)

    {

    printf("請輸入轉換的數字: ");

    scanf("%o",&N);

    printf("八進位(%o)=>十進位(%d)=>十六進位(%x)=>二進位(",N,N,N);

    }

    else

    {

    printf("輸入錯誤! ");

    system("pause");

    return -1;

    }

    if (N >= 0)

    {

    printf("0");

    }

    else

    {

    printf("1");

    }

    Testbit = 1 << (NumericalBit - 1);

    for (Count = 1; Count <= NumericalBit; Count++, Testbit = Testbit >> 1)

    {

    printf("%d", ((N & Testbit) >> (NumericalBit - Count)));

    }

    printf(")\n");

    system("pause");

    }

    參考資料:
  • 1 0 年前

    #include<stdio.h>

    #include<conio.h>

    #define size s

    int main(void)

    {

    int a[20],i=0,j,n,p ;

    printf("Enter the unmber:");

    scanf("%d",&n);

    printf("Enter 2 or 8 or 16:");

    scanf("%d",&p);

    do

    {

    a[i]=n%p;

    n/=p;

    i++;

    }

    while(n!=0);

    for(j=i-1;j>=0;j--)

    {

    if(a[j]>9)

    printf("%c",a[j]+55);

    else

    printf("%d",a[j]);

    }

    system("pause");

    return 0 ;

    }

    參考資料: 上課教的
還有問題?馬上發問,尋求解答。