题目描述
编程实现顺序栈的初始化、入栈、出栈、取栈顶元素和计算栈中元素个数等基本操作。

输入
第一行为入栈元素的个数; 第二行依次为入栈的元素; 出栈操作的次数n.

输出
输出n次出栈后的栈顶元素值。如果是空栈,输出-1.

样例输入
4
1 2 3 4
2

样例输出
2

#include<stdio.h>
#include<malloc.h>
#define MaxSize 1000
struct SqStack
{int data[MaxSize];int top;
};
void init(SqStack*&s)
{s=(SqStack*)malloc(sizeof(SqStack));s->top=-1;
}
void Destroy(SqStack*&s)
{delete(s);
}
bool Stackempty(SqStack*s)
{return (s->top==-1);
}
void push(SqStack*&s,int e)
{if(s->top==MaxSize-1) return ;s->top++;s->data[s->top]=e;
}
int  pop(SqStack*&s)
{int e;if(s->top==-1) return -1;e=s->data[s->top];s->top--;return e;
}
void gettop(SqStack*s,int &e)
{if(s->top==-1) return ;e=s->data[s->top];
}
int main()
{SqStack*st;init(st);int n,num;scanf("%d",&n);while(n--){scanf("%d",&num);push(st,num);}int k;scanf("%d",&k);while(k--){pop(st);}printf("%d",pop(st));
}

1044: 顺序栈基本操作的实现相关推荐

  1. 顺序栈基本操作(入栈和出栈)C语言详解

    #include <stdio.h> #include <stdlib.h> /*顺序栈基本操作(入栈和出栈)C语言详解栈的具体实现(1)顺序栈(2)链栈栈的应用(1)回退 ( ...

  2. 数据结构:顺序栈基本操作(入栈和出栈)C语言详解(转载)by解学武

    本文为解学武教程的免费章节 什么是顺序栈 顺序栈,即用顺序表实现栈存储结构.通过前面的学习我们知道,使用栈存储结构操作数据元素必须遵守 "先进后出" 的原则,本节就 "如 ...

  3. c语言堆栈基本代码入栈出栈_顺序栈基本操作(入栈和出栈)C语言详解

    顺序,即用{1,2,3,4},存储状态如 图 1 顺序表存储 {1,2,3,4} 同样,使用栈存储结构存储 {1,2,3,4},其存储状态如图 2 所示: 图 2 栈结构存储 {1,2,3,4} 通过 ...

  4. c++顺序栈基本操作实现

    顺序栈定义 顺序栈是利用数组存储的栈,只能在栈顶进行出栈入栈,需要定义栈顶(top).栈底(base).栈长(stacksize) 注意: 表示空栈为 top==base: 表示栈满为 top-bas ...

  5. 3.1栈和队列——顺序栈基本操作的实现

    注意:以下内容均省略思路,只有代码.此内容为本人学习过程中的一些学习记录,如有错误,恳请各位指正.建议,末学将感激不尽! 目录 1.前言 2. 栈的特点(计算机二级考试中常考的知识点) 3. 栈的应用 ...

  6. 数据结构之 顺序栈、共享栈、链栈

    顺序栈.共享栈.链栈 一.思维导图: 二.栈的定义: 三.栈的特点: 四.栈的基本操作: 五.常考题型: 六.顺序栈: 1.思维导图: 2.顺序栈基本操作的实现: 1.定义栈: 2. 初始化栈:Ini ...

  7. python 顺序栈及基本操作

    顺序栈 顺序栈,即用顺序表实现栈存储结构.通过前面的学习我们知道,使用栈存储结构操作数据元素必须遵守 "先进后出" 的原则,本节就 "如何使用顺序表模拟栈以及实现对栈中数 ...

  8. C语言实现顺序栈的基本操作(初始化、判断空、入栈、出栈、获取栈顶元素)

    //顺序栈的基本操作 #include<stdio.h> #define MaxSize 50 typedef int ElemType; //定义栈结构体 typedef struct ...

  9. 【C++】【数据结构】顺序栈的基本操作(初始化、入栈、出栈、取栈顶元素、遍历输出栈)的算法实现附全代码

    C++实现顺序栈的算法+步骤(附全代码): 使用c++完成数据结构顺序栈的基本操作,包括(初始化.入栈.出栈.取栈顶元素.遍历输出栈等),可直接编译运行. 顺序栈的定义如下: #define MAXS ...

最新文章

  1. Java获取系统日期时间
  2. 您是否应该始终偏爱xrange()而不是range()?
  3. MapReduce 模式、算法和用例
  4. 【推荐】如何删除windows服务
  5. 近期打算及毕业前要补完的题
  6. 20145207《Java程序设计》实验二(Java面向对象程序设计)实验报告
  7. asp.net js 提示信息封装函数
  8. 撤消git update-index --assume-unchanged file
  9. 接收list参数_Python 犄角旮旯--List
  10. 基于跨模态预测的多模态情感分类
  11. ADSL桥接模式和路由模式的区别(转)
  12. 【Android 逆向】加壳技术识别 ( VMP 加壳示例 | Dex2C 加壳示例 )
  13. 连接局域网中计算机与传输介质的网络设备是,连接局域网中的计算机与传输介质的网络连接设备是。...
  14. 虚拟机的服务器显示全屏,虚拟机怎么实现全屏显示
  15. 高性能软件系统设计中应该考虑的问题
  16. 高斯公式_证明_高数
  17. linux系统1060的显卡驱动打不上,ubuntu14.04+GTX1060 重新安装显卡驱动
  18. 打包jar包时文件读取和第三方jar包的问题
  19. gitee代码管理仓库管理代码,更简单地查看各阶段的代码变动
  20. JavaWeb-云日志

热门文章

  1. Ubuntu下用aircrack破解WIFI密码
  2. 提供凭证不足 无法访问这台计算机,提供的凭证不足无法访问这台打印机
  3. 未能加载文件或程序集 Renci.SshNet, Version=2016.1.0.0, Culture=neutral, PublicKeyToken= 1cee9f8bde3db106或它的某
  4. 数据仓库——ODS/stg层数据漂移问题
  5. PTA 7-14 电话聊天狂人(25 分)map的应用
  6. vijosP1285 佳佳的魔法药水
  7. 开机自动启动 Ubuntu iBus 输入法
  8. 自动语音对话系统 Python实现
  9. 中文的括号和英文的括号区别_小括号、中括号、大括号,英文怎么说?
  10. 关于mikefile 萌新用法