您的位置:首页 > 其它

进制转换(杭电2031)

2014-04-07 23:02 369 查看
#include <stdio.h>

#include <string.h>

main()

{

    int n,r,num,i,c;

    char a[100],b[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};    //初始化进制数b

    while(scanf("%d%d",&n,&r)!=EOF)

    {

        i=0;

        if(n>=0)

            num=n;

        else

            num=-n;    

        if(!n)

            printf("0\n");

        else

        {        

            while(num)

            {

            c=num%r;            //算出进制数 

            a[i++]=b[c];           //存放进制数             

            num/=r;

            }

            if(n<0)

                printf("-");

            while((--i)>=0)

                printf("%c",a[i]);     //从后住前输入出

            printf("\n");    

                 

        }

    }

}

注意:

1、R(2<=R<=16, R<>10)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: