用数组模拟栈的实现:

 #include <stdio.h>
#include <stdlib.h>
#define STACK_SIZE 100
typedef struct Stack
{
int top;
int stack[STACK_SIZE];
}Stack;
void InitStack(Stack *s)
{
s->top=-;
}
int IsEmpty(Stack *s)
{
return s->top==-? :;
}
int IsFull(Stack *s)
{
if(s->top>=STACK_SIZE-)
return ;
return ;
}
int Pop(Stack *s)
{
if(!IsEmpty(s))
{
s->top--;
return s->stack[s->top+];
}
return -;
}
void Push(Stack *s,int m)
{
if(!IsFull(s))
{
s->top++;
s->stack[s->top]=m;
}
}
int main()
{
Stack *s=(Stack*)malloc(sizeof(Stack));
InitStack(s);
Push(s,);
Push(s,);
Push(s,);
printf("%3d",Pop(s));
return ;
}

仅供参考。。

数组模拟栈(C语言)的更多相关文章

  1. Java连载69-接受输入、用数组模拟栈

    一.编写一个酒店管理系统 1.直接上代码 package com.bjpowernode.java_learning; ​ public class D69_1_ { //编写一个程序模拟酒店的管理系 ...

  2. Java数组模拟栈

    一.概述 注意:模拟战还可以用链表 二.代码 public class ArrayStack { @Test public void test() { Stack s = new Stack(5); ...

  3. Hdu 3887树状数组+模拟栈

    题目链接 Counting Offspring Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java ...

  4. java、C语言实现数组模拟栈

    java: public class ArrayStack { private int[] data; private int top; private int size; public ArrayS ...

  5. JavaScript数组模拟栈和队列

    *栈和队列:js中没有真正的栈和队列的类型              一切都是用数组对象模拟的 栈:只能从一端进出的数组,另一端封闭       FILO   何时使用:今后只要仅希望数组只能从一端进 ...

  6. LeetCode 155 - 最小栈 - [数组模拟栈]

    题目链接:https://leetcode-cn.com/problems/min-stack/description/ 设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的 ...

  7. ACM/ICPC 之 用双向链表 or 模拟栈 解“栈混洗”问题-火车调度(TSH OJ - Train)

    本篇用双向链表和模拟栈混洗过程两种解答方式具体解答“栈混洗”的应用问题 有关栈混洗的定义和解释在此篇:手记-栈与队列相关 列车调度(Train) 描述 某列车调度站的铁道联接结构如Figure 1所示 ...

  8. poj 3415 Common Substrings(后缀数组+单调栈)

    http://poj.org/problem?id=3415 Common Substrings Time Limit: 5000MS   Memory Limit: 65536K Total Sub ...

  9. java模拟栈的操作

    栈是一种有序列表,可以使用数组的结构来储存栈的数据内容 思路 1. 创建一个栈类StackArray 2. 定义一个top来模拟栈顶,初始化为-1 3. 入栈: 当有数据加入到栈的时候 top++ s ...

随机推荐

  1. shell控制流程

    #!/bin/bash #存储为a.sh == ] then #参数正确,返回0 else #参数错误,返回1 fi #!/bin/bash #存储为b.sh echo $? $ . ./a.sh $ ...

  2. vue 学习一

    这个是很早之前公司要使用vue.js时候学习记在有道云笔记上的,发觉那个笔记贼多了,没办法,觉得是要换个地方存笔记了, 一vue.js的使用: 可以在页面是直接使用: <!DOCTYPE htm ...

  3. whl is not a supported wheel on this platform解决办法

    有些时候,我们用pip install *** 难免发生意外,可以采用安装whl的方法,不过... 有时候出现如: whl is not a supported wheel on this platf ...

  4. Linux系统结构及常用命令

    一.系统结构 Linux是一个倒树形结构,最大的目录名叫“/”(根目录) 根目录之下有许多的二级目录,这些目录在系统中都拥有自己不同的功能,如图: 以后的诸多命令的执行和操作都与这些目录相关,现在了解 ...

  5. Install NGINX, PHP-FPM (5.6) on CentOS 6

    Installing NGINX with PHP on CentOS 6 can be a hassle depending on the install and packages you use. ...

  6. php连接数据库mysql数据库

    查找数据 $con = mysqli_connect('localhost', 'root', '', 'mydb'); if (!$con) { die('数据库连接失败' . mysqli_con ...

  7. Vue循环中多个input绑定指定v-model

    Vue.js中提供了v-model可以双向绑定表单元素,这个方法可以非常方便的获得输入的值,但是有时候表单元素需要循环生成,在循环中要怎样获得指定输入框的值呢 这里介绍两种,一种是v-for中循环生成 ...

  8. axios拦截器搭配token使用

    在了解到cookie.session.token的作用后学习token的使用 cookie是随着url将参数发送到后台,安全性最低,并且大小受限,不超过4kb左右,它的数据保存在客户端 session ...

  9. 使用media query 来实现响应式设计

    你的网页在手机上显示效果可以在电脑上一样好看.完成这个任务的奥秘被称为响应式设计,媒体查询(media query)是实现网页响应的关键. 在电脑上一个例子: <div class=" ...

  10. DOM, DOCUMENT, BOM, WINDOW 有什么区别?

    DOM: DOM 全称是 Document Object Model,也就是文档对象模型. DOM 就是针对 HTML 和 XML 提供的一个API.什么意思?就是说为了能以编程的方法操作这个 HTM ...