uuubub 2022-10-10 20:43 采纳率: 100%
浏览 161
已结题

编程实现十进制整数和八进制整数之间的转换(即将10进制数转换为8进制数,或将8进制数转换为10进制数)。

问题遇到的现象和发生背景

循环结构如何做,八进制转换10进制也不会

用代码块功能插入代码,请勿粘贴截图

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int u,num, m, c, i = 0;
int v = 8;
int a[32];
char g;
char* p, s[6]; // 18^2+08^1+0*8^0
int d;
printf("\n 进制转换系统\n1、八进制转换为十进制\n2、十进制转换为八进制\n\n ");
printf("请选择序号1或2:");
scanf("%d",&u);
if(u==2)
{
printf("请输入欲转换的数据:");
scanf("%d",&num);
m = num;
while (num > 0)
{
c = (num % v);
a[i] = c;
num = num / v;
i++;
printf("转换为:");
for (i--; i >= 0; i--)
printf("%d", a[i]);
printf("是否继续转换?y/n:");
scanf("%c",&g);
if(g=='y')
{
return 1;
}
if(g=='n')
{
printf("谢谢使用,再见!\n");
}
}

}
if(u==1)
{
    printf("请输入欲转换的数据:");
    p=s;
    gets(p);
    d = 0;
    while (*p)
    {
        d =d * 8 + *(p++) - '0';
        printf("转换为%d\n", d);
        printf("是否继续转换?y/n:");
        scanf("%c",&g);
        if(g=='y')
        {
            return 1;
        }
        if(g=='n')
        {
            printf("谢谢使用,再见!\n");
        }
    }
    return 0;
}

}

运行结果及报错内容

img

我想要达到的结果

编程实现十进制整数和八进制整数之间的转换(即将10进制数转换为8进制数,或将8进制数转换为10进制数)。

img

  • 写回答

1条回答 默认 最新

  • 关注
    
    
    ```c
    dec = int(input("输入数字:"))
    
     
    
    print("十进制数为:", dec)
    
    print("转换为二进制为:", bin(dec))
    
    print("转换为八进制为:", oct(dec))
    
    print("转换为十六进制为:", hex(dec))
    
    

    ```

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月13日
  • 已采纳回答 11月5日
  • 创建了问题 10月10日

悬赏问题

  • ¥15 宇视监控服务器无法登录
  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥15 DruidDataSource一直closing
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了
  • ¥50 STM32单片机传感器读取错误
  • ¥50 power BI 从Mysql服务器导入数据,但连接进去后显示表无数据