使用递归进行进制转换

今天在网上看到了一个使用递归进行进制转换的例子,以前做进制转换的时候都是用的循环,而这次是递归,感觉非常的有意思,目前正在研究算法的思路,大家可以一起来看看。

这个例子是从10进制转换到2进制。

#include<stdio.h>
int convert(int);
int main()
{
    int dec,bin;

    printf("Enter a decimal number: ");
    scanf("%d",&dec);
    bin = convert(dec);
    printf("The binary equivalent of %d is %d.\n",dec,bin);
    return 0;
}
int convert(int dec)
{
    if(dec == 0)
        return 0;
    else
        return (dec % 2 + 10 * convert(dec / 2));
}
posted @ 2014-03-28 20:22  天边的鱼  阅读(412)  评论(0编辑  收藏  举报