#include<stdio.h> #include<stdlib.h> void change(int n,int m)//n代表十进制,m代表十进制n要转化为多少进制 { if(n == 0) { return;//结束,返回以此倒序输出余数即为对应的进制数子 } else { //把函数打印放在 函数调用的下方实现逆序 change(n/m,m);//:n/一直循环下去直到为0,返回倒序求输对应的进制数 printf("%d",n%m);//上下两句不能交换 } } ////十进制转十进制以下的可以直接运行,但是转为大于十进制的,比如十六进制就不能,因为16进制有字母,要特殊对待 int main() { printf("请输入十进制和十进制要转化为多少进制,空格隔开\n"); int n,m; scanf("%d%d",&n,&m); printf("\n"); printf("十进制%d转%d进制为:",n,m); change(n,m); printf("\n"); system("pause"); }
原文:http://blog.csdn.net/u012110719/article/details/44541969