问答详情
源自:6-12 综合练习

进制转换

二进制,八进制,十进制,十六进制怎么相互转换

提问者:UBuffoon 2016-10-12 22:56

个回答

  • JustWannaHugU
    2016-10-13 08:54:48

    手动转换的方法书上很详细,给你份代码

    #include<stdio.h>
    int main()
    {
        char ku[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
        int zh[32],i=0,w,j;
        long int b,y;
        printf("请输入一个十进制数,我能帮您把它转换成2~16任意进制数:\n");
        scanf("%d",&y);
        b=y;
        printf("请输入要转换为的进制:");
        scanf("%d",&w);
        printf("\n");
        do
        {
            zh[i]=y%w;
            i++;
            y=y/w;
        }
        while(y!=0);
        printf("把十进制的%ld转换为%d进制:",b,w);
        for(i--;i>=0;i--)
        {
            j=zh[i];
            printf("%c",ku[j]);
        }
        printf("\n");
        return 0;
    }