十进制转化十六进制

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int maxn=1000000+5;
int str[maxn];
int main()
{
    int n;
    scanf("%d",&n);
    if(n==0)
        printf("0\n");
    else
    {
        int k=0;
        while(n)
        {
            str[k++]=n%16;
            n/=16;
        }
        for(int i=k-1;i>=0;i--)
        {
            switch(str[i])
            {
                case 10:cout<<"A";break;
                case 11:cout<<"B";break;
                case 12:cout<<"C";break;
                case 13:cout<<"D";break;
                case 14:cout<<"E";break;
                case 15:cout<<"F";break;
                default :cout<<str[i];
            }
        }
        cout<<endl;
    }
    return 0;
}

你可能感兴趣的:(十进制转化十六进制)