计算机技术


私信TA

用户名:1459657883

访问量:1773

签 名:

等  级
排  名 3549
经  验 1829
参赛次数 1
文章发表 5
年  龄 0
在职情况 学生
学  校 湘潭大学
专  业

  自我简介:

解题思路:这里用到的数组存储,逆向输出是其次,关键是进制的转换问题,使用短除法横向进行运算,比如82短除8,往下运算是余2,往右边运算得到的倍数10,但是要转换为8进制,这里的10 大于8,需要再除以8,得到往下的余数0,往右的倍数1,最后自右向左,自上而下,直接输出得到8进制数,该方法适合10进制到任意进制的转换。

注意事项:

参考代码

#include<iostream>
using namespace std;
int main()
{
    int n,i=0;
    cin>>n;
    int a[100];
   
    while(n){//短除法的横向拓展
        a[i++] = n%8;
        n /= 8;
    }
    
    for(int j=i-1;j>=0;j--){
        cout<<a[j];
    }
    return 0;
}:

 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区