当前位置: 代码迷 >> 综合 >> 牛客网 CPP55 十进制整数转十六进制字符串
  详细解决方案

牛客网 CPP55 十进制整数转十六进制字符串

热度:17   发布时间:2024-01-21 19:50:56.0

描述

编写一个函数,传入一个十进制的正整数,将十进制整数转换为十六进制的字符串并返回。(十六进制字符串中的字母全部大写)

输入描述:

键盘输入一个十进制的正整数

输出描述:

输出该十进制整数转换后的十六进制字符串

示例1

输入:

162

复制输出:

A2

复制

示例2

输入:

50

复制输出:

32

复制

示例3

输入:

501

复制输出:

1F5

复制

AC代码:

#include <iostream>
#include <string>
using namespace std;string toHexString(int n);string index[16]={"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"};int main() {int n;cin >> n;string hexStr = toHexString(n);cout << hexStr << endl;return 0;
}string toHexString(int n) {string res0="";while(n){int cur=n%16;res0+=index[cur];n/=16;}string res1="";int len=res0.length();for(int i=len-1;i>=0;i--)res1+=res0[i];return res1;
}