题解 | #十进制整数转十六进制字符串#

十进制整数转十六进制字符串

https://www.nowcoder.com/practice/80eca5f47e6f473893151b863b25aba1

#include <iostream>
#include <string>
using namespace std;

string toHexString(int n);

int main() {

    int n;
    cin >> n;

    string hexStr = toHexString(n);
    cout << hexStr << endl;

    return 0;
}

string toHexString(int n) {
    // write your code here......
    if (n == 0)
        return "";
    
    int d = n % 16;
    n /= 16;
    char ch;
    if (d <= 9)
        ch = '0' + d;
    else
        ch = 'A' + (d - 10);
    
    return toHexString(n) + ch;

}

使用递归求解即可。

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务