栈的基本操作C

作者在 2018-04-09 23:19:01 发布以下内容
#include <iostream>//#include <stdio.h>和using namespace std;可以省略
#include <stdio.h>
#define MAXSIZE 10 
using namespace std;

struct Stack//定义关于栈的机构体
{
int a[MAXSIZE];
int top; 
}; 
void push(struct Stack &s);// 这里涉及到了引用就相当于指针的作用 
void pop(struct Stack &s);
void InitStack(struct Stack &s);
void GetStack(struct Stack &s);
int main()
{
struct Stack s1;
InitStack(s1);
push(s1);
//pop(s1);  这个是出栈
GetStack(s1);  //这个是得到栈顶元素
}
//进栈 
void push(struct Stack &s)
{
for(int i=0;i<10;i++)
{
s.top++;
s.a[s.top]=(i*10);
}

}

//出栈

void pop(struct Stack &s)
{
for(int i=0;i<10;i++)
{
printf("%d ",s.a[s.top]);
s.top--;
}

}

//初始化栈

void InitStack(struct Stack &s)
{
s.top=-1;

}

//对栈赋初值

void GetStack(struct Stack &s)
{
printf("%d",s.a[s.top]);
}

//此函数是用引用的方式对函数操作 

//此函数是对栈的操作

默认分类 | 阅读 2307 次
文章评论,共1条
增贫列略(游客)
2020-10-22 11:37
1
代码错了,第一行就错了,根本执行不了
游客请输入验证码
浏览8391次
文章分类
文章归档