数据结构 十进制数变换为十六进制 输出

数据结构 十进制数转换为十六进制 输出
// Convert.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "stdio.h"
#include "iostream"
#include "stack"

using namespace std;
void Convert(int num);
int _tmain(int argc, _TCHAR* argv[])
{
	int num;
	while(cin>>num)
	{
		Convert(num);
		cout<<endl;
	}
	return 0;
}

void Convert(int num)
{
	stack<int> S;
	while(num)
	{
		S.push(num%16);
		num=num/16;
	}
	while(!S.empty())
	{
		int top=S.top();
		S.pop();
		switch(top)
		{
		case 0:
		case 1:
		case 2:
		case 3:
		case 4:
		case 5:
		case 6:
		case 7:
		case 8:
		case 9:
			{
				printf("%d",top);break;
			}
		case  10:
			{
				printf("A");
				break;
			}
		case  11:
			{
				printf("B");
				break;
			}
		case  12:
			{
				printf("C");
				break;
			}
		case  13:
			{
				printf("D");
				break;
			}
		case  14:
			{
				printf("E");
				break;
			}
		case  15:
			{
				printf("F");
				break;
			}
		}
	}
}