1. 程式人生 > >OJ.318.進位制轉換

OJ.318.進位制轉換

十進位制與二進位制和八進位制之間的轉換。

注意哈,要倒序輸出哈~

#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <string>
using namespace std;
int main()
{
    int num,num1;
    int i;
    char binary[1005],octal[1005];
    int t=0,u=0;
    while(cin>>num)
    {num1=num;
    t=0,u=0;
    if(num==0)
    {
        printf("0\n");
    }
    else
    {
        while(num!=0)
        {
            binary[t++]=num%2;
            num=num/2;
        }
        for(i=t-1;i>=0;i--)
        {
            printf("%d",binary[i]);
        }printf("\n");
    }
    if(num1==0)
    {printf("0\n");}
    else
    {
        while(num1!=0)
        {
            octal[u++]=num1%8;
            num1=num1/8;
        }
         
        for(i=u-1;i>=0;i--)
        {
            printf("%d",octal[i]);
        }
        printf("\n");
    }
    }
    return 0;
}