数制转换_顺序栈_头文件

2024-02-06 00:32
文章标签 转换 顺序 头文件 数制

本文主要是介绍数制转换_顺序栈_头文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

将写好的头文件添加到工程的文件夹Head内,然后再编写源程序。

//
//Description:顺序栈.h
//
#include <iostream>
#include <malloc.h>
using namespace std;#define STACK_INIT_SIZE 100
#define STACKINCREMENT 10typedef int Status;
typedef int SElemType;//顺序栈的定义
typedef struct
{SElemType *base;SElemType *top;int stacksize;
}SqStack;//---------------以下为基本操作
//构造一个栈
Status InitStack(SqStack &S)
{S.base = (SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType));if (!S.base){cout << "存储空间分配失败!" << endl;return 0;}S.top = S.base;S.stacksize = STACK_INIT_SIZE;return 1;
}//初始化一个栈
Status Input(SqStack &S, int n)
{int i;if (n > 0){cout << "请输入第" << 1 << "个元素的值" << endl;cin >> *S.base;S.top++;for (i = 2; i <= n; i++){cout << "请输入第" << i << "个元素的值" << endl;cin >> *S.top;S.top++;}return 1;}else{cout << "输入数据不合法!" << endl;return 0;}}
//判断栈是否为空栈
Status StackEmpty_Or_not(SqStack S)
{if (S.top == S.base){return 0;}elsereturn 1;}//查看栈顶元素
Status GetTop(SqStack S, SElemType &e)
{if (S.top == S.base){cout << "目前为空栈,无栈顶元素!" << endl;return 0;}e = *(S.top - 1);cout << "当前栈顶元素为" << e << endl;return 1;
}//向栈顶插入一个元素
Status Push(SqStack &S, SElemType e)
{if (S.top - S.base >= S.stacksize){S.base = (SElemType *)realloc(S.base, (S.stacksize + STACKINCREMENT)*sizeof(SElemType));if (!S.base){cout << "执行插入操作分配存储空间时失败!" << endl;return 0;}S.top = S.base + S.stacksize;S.stacksize += STACKINCREMENT;}*S.top++ = e;return 1;
}//删除栈顶元素
Status Pop(SqStack &S, SElemType &e)
{if (S.top == S.base){cout << "目前为空栈,无法执行删除栈顶元素的操作!" << endl;return 0;}e = *--S.top;return 1;
}

//
//Description:顺序栈.cpp
//
#include <iostream>
#include "顺序栈.h"
using namespace std;SqStack stc;//对于输入的数据进行数制转换
int conversion()
{InitStack(stc);int value, jinzhi;
loop:  cout << "请输入欲进行转换的数据以及欲转换成的进制数(*两者都得大于0)" << endl;cin >> value >> jinzhi;if (value <= 0 || jinzhi <= 0){cout << "您输入的数据不合法(应该>0)" << endl;goto loop;//  return 0;}cout << "数据 " << value << " 转换成 " << jinzhi << " 进制的数据后,其值为 :" << endl;while (value){Push(stc, value%jinzhi);value = value / jinzhi;}while (StackEmpty_Or_not(stc)){Pop(stc, value);cout << value;}cout << endl;return 1;
}void main()
{cout << "================数制转换===========" << endl;conversion();
}

这篇关于数制转换_顺序栈_头文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/682652

相关文章

Java中ArrayList与顺序表示例详解

《Java中ArrayList与顺序表示例详解》顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构,:本文主要介绍Java中ArrayList与... 目录前言一、Java集合框架核心接口与分类ArrayList二、顺序表数据结构中的顺序表三、常用代码手动

Python轻松实现Word到Markdown的转换

《Python轻松实现Word到Markdown的转换》在文档管理、内容发布等场景中,将Word转换为Markdown格式是常见需求,本文将介绍如何使用FreeSpire.DocforPython实现... 目录一、工具简介二、核心转换实现1. 基础单文件转换2. 批量转换Word文件三、工具特性分析优点局

使用C#实现将RTF转换为PDF

《使用C#实现将RTF转换为PDF》RTF(RichTextFormat)是一种通用的文档格式,允许用户在不同的文字处理软件中保存和交换格式化文本,下面我们就来看看如何使用C#实现将RTF转换为PDF... 目录Spire.Doc for .NET 简介安装 Spire.Doc代码示例处理异常总结RTF(R

OFD格式文件及如何适应Python将PDF转换为OFD格式文件

《OFD格式文件及如何适应Python将PDF转换为OFD格式文件》OFD是中国自主研发的一种固定版式文档格式,主要用于电子公文、档案管理等领域,:本文主要介绍OFD格式文件及如何适应Python... 目录前言什么是OFD格式文档?使用python easyofd库将PDF转换为OFD第一步:安装 eas

基于Java实现PPT到PDF的高效转换详解

《基于Java实现PPT到PDF的高效转换详解》在日常开发中,经常会遇到将PPT文档批量或单文件转换为PDF的需求,本文将详细介绍其使用流程、核心代码与常见问题解决方案,希望对大家有所帮助... 目录一、环境配置Maven 配置Gradle 配置二、核心实现:3步完成PPT转PDF1. 单文件转换(基础版)

使用C#实现Excel与DataTable的相互转换

《使用C#实现Excel与DataTable的相互转换》在软件开发中,Excel文件和DataTable是两种广泛使用的数据存储形式,本文将介绍如何通过C#实现Excel文件与Data... 目录安装必要的库从 Excel 导出数据到 DataTable从 DataTable 导入数据到 Excel处理 E

利用Python将PDF文件转换为PNG图片的代码示例

《利用Python将PDF文件转换为PNG图片的代码示例》在日常工作和开发中,我们经常需要处理各种文档格式,PDF作为一种通用且跨平台的文档格式,被广泛应用于合同、报告、电子书等场景,然而,有时我们需... 目录引言为什么选择 python 进行 PDF 转 PNG?Spire.PDF for Python

Java轻松实现PDF转换为PDF/A的示例代码

《Java轻松实现PDF转换为PDF/A的示例代码》本文将深入探讨Java环境下,如何利用专业工具将PDF转换为PDF/A格式,为数字文档的永续保存提供可靠方案,文中的示例代码讲解详细,感兴趣的小伙伴... 目录为什么需要将PDF转换为PDF/A使用Spire.PDF for Java进行转换前的准备通过

JAVA实现亿级千万级数据顺序导出的示例代码

《JAVA实现亿级千万级数据顺序导出的示例代码》本文主要介绍了JAVA实现亿级千万级数据顺序导出的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 前提:主要考虑控制内存占用空间,避免出现同时导出,导致主程序OOM问题。实现思路:A.启用线程池

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结