问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何写数据结构中栈的顺序表示中主函数?我要的是C语言版的。例子...

发布网友 发布时间:2022-05-09 22:20

我来回答

1个回答

热心网友 时间:2022-04-23 19:10

//Sorry,看来我理解错了,这是改后的》》》》》》》》
//顺序栈>>>>>>>>>>>>>>>
#include<stdio.h>
#include<stdlib.h>
#define MAXSIZE 100
typedef struct
{
int data[MAXSIZE];
int top;
}SqStack;
void PushStack(SqStack *S,int x) //入栈
{
if(S->top==MAXSIZE-1) printf("栈已满,不能入栈!\n");
else
}
void PopStack(SqStack *S) //退栈
{
if(S->top==-1) printf("栈为空,不能出栈!\n");
else
}
int GetStackTop(SqStack S) //取栈顶元素
{
return S.data[S.top];
}
main()
{
int x,i;
SqStack myStack;
myStack.top=-1;
do
{
printf("请选择你需要的操作:\n1.置空栈.\n2.进栈.\n3.退栈.\n4.取栈顶元素.\n5.退出程序.\n(请输入1或2或3或4或5):");
scanf("%d",&i);
switch(i)
{
case 1:myStack.top=-1;printf("栈已置空!\n");break;
case 2:printf("请输入你要进栈的元素:");
scanf("%d",&x);
PushStack(&myStack,x);break;
case 3:PopStack(&myStack);break;
case 4:if(myStack.top!=-1) printf("栈顶元素是 %d.\n",GetStackTop(myStack));
else printf("栈为空,没有元素!\n");break;
case 5:break;
default:printf("选择错误,请重新输入!\n");break;
}
}while(i!=5);
return 0;
}

//链栈>>>>>>>>>>>>
#include<stdio.h>
#include<stdlib.h>
typedef struct SNode
{
int data;
struct SNode *next;
}SNode,*LinkStack;
LinkStack top;
LinkStack PushStack(LinkStack top,int x) //入栈
{
LinkStack s;
s=(LinkStack)malloc(sizeof(SNode));
s->data=x;
s->next=top;
top=s;
return top;
}
LinkStack PopStack(LinkStack top) //退栈
{
LinkStack p;
if(top!=NULL)
{
p=top;
top=top->next;
free(p);
printf("退栈已完成\n");
return top;
}
else printf("栈是空的,无法退栈!\n"); return 0;
}
int GetStackTop(LinkStack top) //取栈顶元素
{
return top->data;

}
main()
{
int i,x;
do
{
printf("请选择你需要的操作:\n1.置空栈.\n2.进栈.\n3.退栈.\n4.取栈顶元素.\n5.退出程序.\n(请输入1或2或3或4或5):");
scanf("%d",&i);
switch(i)
{
case 1:top=NULL;break;
case 2:printf("请输入你要进栈的元素:");
scanf("%d",&x);
top=PushStack(top,x);
printf("进栈已完成!\n");break;
case 3:top=PopStack(top);break;
case 4:if(top!=NULL) printf("栈顶元素是:%d!\n",GetStackTop(top));
else printf("栈是空的,没有元素!\n");break;
case 5:break;
default:printf("选择错误,请重新输入!\n");break;
}
}while(i!=5);
return 0;
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我的世界手游天堂门怎么做 天堂门怎么放水 肌肤暗沉怎么调理?肌肤美白小窍门 该收心回归工作的说说 开启上班模式幽默说说(开启上班模式,享受美好生活) 格兰仕电磁炉e0换245k电阻用两次又烧 格兰仕电磁炉显示E4怎么办? ...于海中小虾,海中大虾……瀚海蛟龙的性质。谢谢了 相亲之后一周都有联系,也有出去吃饭看电影,但不明确男方具体什么态度... 相亲男之前一直对我很好(三天两头喊我看电影,吃饭),正好聊的那段时间我... ...个星期几每天晚上叫我出去吃饭看电影 当然都是他买单 。这样弄的... 埇桥区教育集团2021一2022学年度第一学期期中质量检测八年级生物试题卷_百度问一问 手机上怎么把两张图片合成一张 初二生物期中测试卷 宁波地铁一号线35kv环网电缆的型号规格为 地铁环网电缆支架无轨测量技术研究 什么是环网柜 环网柜与电缆分支箱有什么区别 请帮忙解释下什么是环网柜 33KV环网电缆搏设钢性固定是为了什么 什么是环网单元 什么是电力环网箱?环网箱具体是干什么的?和箱变的区别是什么? 我想问问双环网供电的优点 环网是什么意思 什么是简单环网 10KV高压开关站设计中,“一进一环出”是什么意思? 请教:什么叫环网供电?在什么情况下应该选用该种供电方式? 电缆环网什么意思 谁能告诉我怎么制作视频? 我想知道怎么制作视频? 我想知道怎么样制作视频? C++顺序栈的主函数怎么写,我的程序的话主程序该怎么写 栈的表示与实现的主函数 C语言数据结构栈的主函数怎么调用?主函数怎么写?下面是栈的部分程序,帮忙把主函数不出来吧 请写出顺序栈的入栈函数,即往栈中插入元素e为新的栈顶元素 c语言 栈的操作 曾经的你,杭州站版本,mp3下载链接 632007107 c++顺序栈的遍历怎么写,求大神 许巍的《曾经的你》QQ空间音乐链接 数据结构(C语言版)用顺序栈计算表达式 有木有跟 曾经的你 这首歌风格差不多的 或者类似烟花易冷这种歌曲的 给老师们的诗歌以及祝福语 有首歌的歌词里有‘每次难过的时候,就独自看一看大海,总想起身边走在路上的朋友’歌名叫什么? 急求!!!金枝欲孽2[高清TV粤语]16(1)种子下载,感谢哈 2016浙江卫视跨年演唱会许巍曾经的你前奏钢琴那段音乐 邯郸市同心康维医药药材有限公司康维药房怎么样? 求朴树的一首歌名 得物的防盗扣怎么 这两年和近三年是什么意思 求数码宝贝所有主角合唱的歌曲和个人的角色歌曲!!! 数码宝贝第一季的所有歌曲名字?