进制转换器(用顺序栈实现)(可实现简单的二进制或八进制或十进制的转换)
#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;
}
进制转换器(用顺序栈实现)(可实现简单的二进制或八进制或十进制的转换)相关推荐
- 进制转换器——章节实验作业(C语言链栈)
进制转换器--章节实验作业 [问题描述]十进制数N和其他d进制数的转换是计算机实现计算的基本问题.通常我们可以使用短除法进行转换,基本原理为:N=(N div d)*d+N mod d(其中:div为 ...
- 万能进制转换器——栈应用
万能进制转换器--栈应用 前言 一.设计思路 1.字符串和数字通过ASCII码来转换 2.先将用户输入的数字转换为10进制,再由10进制转为其他进制 二.具体步骤的实现 1.准备步骤 1.执行步骤 ( ...
- 进制转换器的c代码实现
1.很久没有更新博客了 这次想要记录分享一下在这段学习过程中实现的进制转换器 c语言代码 里面运用到了一些数据结构和递归的相关知识 也算是一个简单的综合运用吧 2.核心思想是将一切进制转换为10进制 ...
- 数据结构之进制转换器实现
进制转换器项目要求:用户提供需要转换的数据和该数据的进制,以及要转换的进制,进制转换器提供给用户最终的正确转换的结果. 转换器实例 例如,用户提供了一个十进制数:10,要求将此数据以二进制形式转换,则 ...
- C++实现数字进制转换器
C++实现数字进制转换器 刷题中遇到一些进制转化的题目,由于从十进制转化为其他进制(十以内)方法完全相同,因此总结为一个进制转换器作为练习,当作一个练习记录.代码没有经过优化,请诸位大佬轻喷. 十进制 ...
- C#底层库--万能进制转换器(自定义有序字符,支持任意进制)
系列文章 C#底层库–RegexHelper正则表达式辅助类 本文链接:https://blog.csdn.net/youcheng_ge/article/details/109745286 C#底层 ...
- 用java编写进制转换器_JAVA 简单进制转换器
JAVA作业写了个进制转换器...写出来的东西还蛮怪的 /* * Author:graykido * Coding:GBK * */ package Caculater; import javafx. ...
- java进制转换界面,java进制转换器 图形用户界面 十进制及其相反数诀别转化为二,四,八,十六进制...
java进制转换器 图形用户界面 十进制及其相反数分别转化为二,四,八,十六进制 package com.rgy.Test; import java.awt.Color; import java.aw ...
- android进制之间的转换器,一个Android平台的16进制转换器
<一个Android平台的16进制转换器>由会员分享,可在线阅读,更多相关<一个Android平台的16进制转换器(1页珍藏版)>请在人人文库网上搜索. 1.一个An droi ...
最新文章
- STM32-RCC内部总线时钟设置程序详讲
- mysql innodb文件_MySQL文件和Innodb引擎文件
- 在Windows 8下成功安装.Net3.5的方法
- 生活中的算法---公交换乘
- 如何设计真正高性能高并发分布式系统(万字长文)
- JMeter接口测试通过企业微信API记录(二)创建审批接口并测试
- python的flask微服务-一次flask+redis的微服务实战
- linux io端口复用,Linux系统IO复用接口(select、poll、epoll)
- 软件工程 --第七章 -- 实现(未完)
- 大三了,计算机专业学生的困惑。 [转]
- 有趣的灵魂百里挑一,Linux同学你低下头干嘛,起来说下这个问题。
- ztree在刷新时第一个父节点消失_第一个关于中式菜谱的智能问答机器人小程序正式上线啦...
- 微软发布 PowerToys 0.12.0,带来批量处理工具和暗黑模式
- 用Windows Live Writer在博客园发布Post
- linux安装gcc-c++
- eplan彻底卸载_EPLAN在64位WIN7如何永久取消驱动程序数字签名认证
- 使用TreeMap对要签名做排序ASCII码排序
- HTTP方法的幂等性
- steam密码文件在哪里_如何将您的Steam库无痛地移动到另一个文件夹或硬盘驱动器...
- 鸿蒙818与A73,荣耀智慧屏正式发布:鸿鹄818智慧芯片+鸿蒙OS,开启未来新视觉
热门文章
- DNS的配置与应用实验
- Android破取某漫画app获得VIP权限
- 利用VS2015与FFmpeg实现视频解编码的基本过程
- 我的vim配置和solardark主题
- Games104现代游戏引擎入门-lecture6游戏中的大气和云的渲染(下)
- 以色列央行公开征集DLT相关信息
- asterisk srtp
- Flask 微信公众号开发
- 考试偷用计算机检讨书300字,考试没考好检讨书300字
- [ICCV2019]DF2Net: A Dense-Fine-Finer Network for Detailed 3D Face Reconstruction