tugouzhishen 2022-09-16 16:52 采纳率: 88.5%
浏览 73
已结题

C语言进制转换怎么处理

问题遇到的现象和发生背景
用代码块功能插入代码,请勿粘贴截图
我想要达到的结果

从屏幕上输入一个数,显示出它的二 五 六 八 十三 十六 二十进制值分别是多少,20进制F以后就用GHIJK往后排。

  • 写回答

3条回答 默认 最新

  • 日向晚,声声慢 2022-09-16 17:21
    关注
    
    #include<stdio.h>
    void Change(int n,int a) //10 8
    {
        int ret = 0;//余数  
        if (n)
        {
            ret = n % a;  //10%8=2  --> 1%8=1
            n = n / a;   //10/8=1    -->1/8=0
            Change(n,a);
            if (a > 10)
            {
                if (ret >= 10)
                    printf("%c", ret + 55);
                else
                    printf("%d", ret);;
            }
            else
                printf("%d", ret);
        }
    }
    int main()
    {
        int n = 0;//输入数
        int a = 0;//输入要转换的进制
        printf("请输入:>\n");
    
        //数字n转化成a进制
        //scanf("%d%d", &n,&a);
        //printf("%d的%d进制:>",n,a);
        //Change(n, a);
    
        scanf("%d", &n); //10  8
        printf("%d的2进制:>",n);
        Change(n, 2);
        printf("\n");
    
        printf("%d的5进制:>",n);
        Change(n, 5);
        printf("\n");
    
        printf("%d的6进制:>",n);
        Change(n, 6);
        printf("\n");
    
        printf("%d的8进制:>",n);
        Change(n, 8);
        printf("\n");
    
        printf("%d的13进制:>",n);
        Change(n, 13);
        printf("\n");
    
        printf("%d的16进制:>",n);
        Change(n, 16);
        printf("\n");
    
        printf("%d的20进制:>",n);
        Change(n, 20);
        printf("\n");
    
    
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月24日
  • 已采纳回答 9月16日
  • 赞助了问题酬金10元 9月16日
  • 创建了问题 9月16日

悬赏问题

  • ¥15 2024-五一综合模拟赛
  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭