进制转化

将一个十进制数n转为指定的B进制数。(其中B<=16)

#include <stdio.h>

int main()
{
    int base;//基数+1
    int num = 0;
    int a[100];
    int i = 0;
    int m = 0;
    int yushu;
    char hex[16] = {'0','1','2','3','4','5','6','7','8','9',
                    'a','b','c','d','e','f'};
    printf("请输入你要转化的进制:");
    scanf("%d", &base);
    printf("请输入一个十进制整数:");
    scanf("%d", &num);
    while(num>0)
    {
        yushu = num%base;
        a[i++]=yushu;
        num = num/base;
    }
    printf("转化为%d进制的数为:", base);
    for(i=i-1;i>=0;i--)
    {
        m=a[i];
        printf("%c",hex[m]);
    }
    printf("\n");
    return 0;
}

posted @ 2017-06-06 10:09  Ridgway  阅读(81)  评论(0)    收藏  举报