您的位置:首页 > 其它

利用递归方法实现任意进制转换的方法

2014-07-22 21:36 1146 查看
今天想到了一个利用递归实现任意进制转换的方法,觉得很好用,在这里记录一下。


#include <stdio.h>

int ary = 2;  //存放进制  默认为二进制

char array[] = {'1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};

void my_binary_output(int num)  //递归 实现进制转换

{

        int i;

        if( num < ary )

        {

                printf("%c",array[(num%ary-1)]);

        }

        else{

                my_binary_output(num/ary);

                printf("%c",array[(num%ary)-1]);

        }

}

int main(int argc,char **argv)

{

        int my_num;

        printf("Please input a number and ary:\n");

        scanf("%d %d",&my_num,&ary);

        printf("My binary output is :");

        my_binary_output(my_num);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  递归 二进制 c printf