#include <stdio.h>
#include <stdlib.h>
#define STACK_MAX_SIZE 100
typedef int ElemType;
typedef struct {
        ElemType data[STACK_MAX_SIZE];
        int stacktop;
}Sqstack;

//栈的初始化
Sqstack InitStack(Sqstack &l){
      l.stacktop=-1;
      return l;
}
//判断栈空(如果为空栈返回0,否则返回1)
int EmptyStack(Sqstack &l){
    if(l.stacktop==-1){
       return 0;
    }
    else
        return 1;
}

//进栈
void Pushstack(Sqstack &l,int temp){
    if(l.stacktop==STACK_MAX_SIZE-1) {
        printf("此栈空间已满!\n");
    }
    l.stacktop++;
    l.data[l.stacktop]=temp;
        
}

//出栈
int Popstack(Sqstack &l){
    int temp;
    if(l.stacktop==-1){
    printf("此栈为空!\n");
    }
       temp=l.data[l.stacktop];
       l.stacktop--;
       return temp;
}
//进制转换
void conversion(){
     Sqstack l;
     int n,e,m;
     InitStack(l);
     printf("请输入任意一个非负十进制整数:\n");
     scanf("%d",&n);
     printf("请输入要转换的进制数(二进制或八进制):\n");
     scanf("%d",&m);
     while(n){
          Pushstack(l,n%m);
          n=n/m;
     }
     printf("转换为%d进制的结果为:\n",m);
     while(EmptyStack(l)){
          e=Popstack(l);
          printf("%d",e);
     }

}
int main() {
    while(1){
    conversion();
    printf("\n");
    }
    return 0;
}

进制转换器(用顺序栈实现)(可实现简单的二进制或八进制或十进制的转换)相关推荐

  1. 进制转换器——章节实验作业(C语言链栈)

    进制转换器--章节实验作业 [问题描述]十进制数N和其他d进制数的转换是计算机实现计算的基本问题.通常我们可以使用短除法进行转换,基本原理为:N=(N div d)*d+N mod d(其中:div为 ...

  2. 万能进制转换器——栈应用

    万能进制转换器--栈应用 前言 一.设计思路 1.字符串和数字通过ASCII码来转换 2.先将用户输入的数字转换为10进制,再由10进制转为其他进制 二.具体步骤的实现 1.准备步骤 1.执行步骤 ( ...

  3. 进制转换器的c代码实现

    1.很久没有更新博客了 这次想要记录分享一下在这段学习过程中实现的进制转换器 c语言代码 里面运用到了一些数据结构和递归的相关知识 也算是一个简单的综合运用吧 2.核心思想是将一切进制转换为10进制 ...

  4. 数据结构之进制转换器实现

    进制转换器项目要求:用户提供需要转换的数据和该数据的进制,以及要转换的进制,进制转换器提供给用户最终的正确转换的结果. 转换器实例 例如,用户提供了一个十进制数:10,要求将此数据以二进制形式转换,则 ...

  5. C++实现数字进制转换器

    C++实现数字进制转换器 刷题中遇到一些进制转化的题目,由于从十进制转化为其他进制(十以内)方法完全相同,因此总结为一个进制转换器作为练习,当作一个练习记录.代码没有经过优化,请诸位大佬轻喷. 十进制 ...

  6. C#底层库--万能进制转换器(自定义有序字符,支持任意进制)

    系列文章 C#底层库–RegexHelper正则表达式辅助类 本文链接:https://blog.csdn.net/youcheng_ge/article/details/109745286 C#底层 ...

  7. 用java编写进制转换器_JAVA 简单进制转换器

    JAVA作业写了个进制转换器...写出来的东西还蛮怪的 /* * Author:graykido * Coding:GBK * */ package Caculater; import javafx. ...

  8. java进制转换界面,java进制转换器 图形用户界面 十进制及其相反数诀别转化为二,四,八,十六进制...

    java进制转换器 图形用户界面 十进制及其相反数分别转化为二,四,八,十六进制 package com.rgy.Test; import java.awt.Color; import java.aw ...

  9. android进制之间的转换器,一个Android平台的16进制转换器

    <一个Android平台的16进制转换器>由会员分享,可在线阅读,更多相关<一个Android平台的16进制转换器(1页珍藏版)>请在人人文库网上搜索. 1.一个An droi ...

最新文章

  1. STM32-RCC内部总线时钟设置程序详讲
  2. mysql innodb文件_MySQL文件和Innodb引擎文件
  3. 在Windows 8下成功安装.Net3.5的方法
  4. 生活中的算法---公交换乘
  5. 如何设计真正高性能高并发分布式系统(万字长文)
  6. JMeter接口测试通过企业微信API记录(二)创建审批接口并测试
  7. python的flask微服务-一次flask+redis的微服务实战
  8. linux io端口复用,Linux系统IO复用接口(select、poll、epoll)
  9. 软件工程 --第七章 -- 实现(未完)
  10. 大三了,计算机专业学生的困惑。 [转]
  11. 有趣的灵魂百里挑一,Linux同学你低下头干嘛,起来说下这个问题。
  12. ztree在刷新时第一个父节点消失_第一个关于中式菜谱的智能问答机器人小程序正式上线啦...
  13. 微软发布 PowerToys 0.12.0,带来批量处理工具和暗黑模式
  14. 用Windows Live Writer在博客园发布Post
  15. linux安装gcc-c++
  16. eplan彻底卸载_EPLAN在64位WIN7如何永久取消驱动程序数字签名认证
  17. 使用TreeMap对要签名做排序ASCII码排序
  18. HTTP方法的幂等性
  19. steam密码文件在哪里_如何将您的Steam库无痛地移动到另一个文件夹或硬盘驱动器...
  20. 鸿蒙818与A73,荣耀智慧屏正式发布:鸿鹄818智慧芯片+鸿蒙OS,开启未来新视觉

热门文章

  1. DNS的配置与应用实验
  2. Android破取某漫画app获得VIP权限
  3. 利用VS2015与FFmpeg实现视频解编码的基本过程
  4. 我的vim配置和solardark主题
  5. Games104现代游戏引擎入门-lecture6游戏中的大气和云的渲染(下)
  6. 以色列央行公开征集DLT相关信息
  7. asterisk srtp
  8. Flask 微信公众号开发
  9. 考试偷用计算机检讨书300字,考试没考好检讨书300字
  10. [ICCV2019]DF2Net: A Dense-Fine-Finer Network for Detailed 3D Face Reconstruction