ycyj060910 2023-04-14 18:25 采纳率: 0%
浏览 88

小张的进制转换,有点不会

小张同学最近正在学习进制转换,他已经掌握了各种进制转的技巧。面对众多的进制转换问题,小张觉得逐一计算效率不高,还是写个程序计算起来更快。
请你帮助小张同学编程,将无符号整数n,转化成在b进制下的表示。
例如: n为10,b为2,则转化后为1010。
又如:n为10,b为16,则转化后为0XA。

  • 写回答

3条回答 默认 最新

  • 浪客 2023-04-15 10:25
    关注
    
    #include <iostream>
    #include <vector>
    using namespace std;
    int main()
    {
        int n, D;
        vector<int> outcome;
        cout << "输入要转换的整数和进制" << endl;
        cin >> n >> D;
        for (; n > 0;)
        {
            outcome.push_back(n % D);
            n /= D;
        }
    
        for (vector<int>::iterator it = outcome.end(); it != outcome.begin();)
        {
            --it;
            if ((*it) < 10)
                cout << *it;
            else
                cout << (char)((*it) - 10 + 'A');
        }
    
        return 0;
    }
    
    
    评论

报告相同问题?

问题事件

  • 创建了问题 4月14日