转进制(递归)

描述

用递归算法将一个十进制数X转换成任意进制数M(M≤16)。

格式

输入格式

一行两个数,第一个十进制数X,第二个为进制M。

输出格式

输出结果。

样例

输入样例

31 16 {将十进制31转化为十六进制数}

输出样例

1F

限制

时间限制: 1000 ms

内存限制: 65536 KB

#include <iostream>
#include <queue>
#include <string.h>
#include <algorithm>
using namespace std;

void rec(int x, int m) {
	int tmp = 0;
	if (x == 0) {
		return;
	} else {
		tmp = x % m;
		x /= m;
		rec(x, m);
		if (m > 10 && tmp > 9) {
			printf ("%c", (char)tmp+55);
			return;
		}
		printf ("%d", tmp);	
		
	}
}

int main()
{
	int x, m;
	scanf ("%d %d", &x, &m);
	rec(x, m); 
	return 0;
}
发布了89 篇原创文章 · 获赞 77 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/wodemaoheise/article/details/104904966
今日推荐