首页

文章

有关数据结构栈的代码

发布网友 发布时间:2022-04-19 23:38

我来回答

2个回答

热心网友 时间:2022-05-19 10:10

status initstack(Sqstack & s)
{
int i,p;
s.base=(selemtype *)malloc(stack_intit_size*sizeof(selemtype));
if(!s.base)
return (OVERFLOW);
printf("enter 5 numbers:\n");
s.top = s.base; //增加栈顶指向base
for(i=0;i<5;i++)
{
//s.top=(selemtype *)malloc(stack_intit_size*sizeof(selemtype)); 这一句不要,前面base已经申请过内存空间了
scanf("%d",&p);
*(s.top)++=p;
}
s.stacksize+=stack_intit_size;
return OK;
}
status push(Sqstack &s,selemtype e)
{
int p;
if(s.top-s.base>=s.stacksize)
{
s.base=(selemtype *)realloc (s.base,(s.stacksize)*sizeof(selemtype));
//这句改为s.base=(selemtype *)realloc(s.base, (s.statcksize + stackincrement)*sizeof(selemtype)); realloc的时候需要指明新的内存大小
if(!s.base) exit (OVERFLOW);
s.top=s.base+s.stacksize;
s.stacksize+=stackincrement;
}
for(int i=0;i<5;i++) //这条for语句不需要,push动作只要把当前元素放到栈顶就可以了
{
*s.top++=e;p=*s.top;
}
printf("%d\n",p);
return OK;
}
int main()
{
Sqstack s;
initstack(s);
printf("\n");
push(s,2);
return 0;
}追问这样的运行结果是个随机数啊

追答不好意思,漏看了一句

status initstack(Sqstack & s)
{
int i,p;
s.base=(selemtype *)malloc(stack_intit_size*sizeof(selemtype));
if(!s.base)
return (OVERFLOW);
printf("enter 5 numbers:\n");
s.top = s.base; //增加栈顶指向base
for(i=0;i<5;i++)
{
//s.top=(selemtype *)malloc(stack_intit_size*sizeof(selemtype)); 这一句不要,前面base已经申请过内存空间了
scanf("%d",&p);
*(s.top)++=p;
}
s.stacksize+=stack_intit_size; //这句改成s.stacksize=stack_intit_size;
return OK;
}

八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 高分!换显卡nvidia控制面板被我卸了,重新安装显卡驱动后没了nvidia控... 我的nvidia控制面板被卸载了 怎么找回啊 卸载后 这个画面看着很奇怪_百 ... 李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 intitation什么意思 I clearly remember lockint it. C#从int到double类型转换的问题 int是什么词性? int.表示什么词性 java中int 和 Integer 有什么区别 Java中Integer和int的区别 int什么是什么词性 谁能解释一下下面这段程序啊? int it= Integer.parseInt(intStr); double itf=(d... 用了加速器之后不能上网了 手机连wifi可以上网 网游加速器的四种加速模式分别是什么? 请问下在国外用迅游加速器可以吗? 腾讯手游加速器算外网吗 刚在网站上下了个加速器,安装后电脑就不能上网了... 美国快手用什么软件才能打得开 oppor17换电池 win网络小地球? 网游加速器可以当使用吗? oppor17原装充电器是深圳还是惠州出的 在c语言中,int代表什么意思 急!!大家可不可以帮我翻译一下,万分感谢,谢谢了 “大家好”用英语怎么说 c语言编程例题 关于C语言中的int恳请各位高手解惑 (int&)怎么用? isdigit(int ch) 具体用法 签订书面的劳动合同原因是什么 申请确认劳动关系原因是什么 续签劳动合同原因及内容 《解除终止劳动合同人员登记表》上终止解除劳动合... 签订劳动合同申请书范文 劳动合同申请书怎么写? 企业解除劳动合同跟个人申请解除劳动合同有什么区别 十级工伤我个人要解除劳动合同原因怎么填写 个人原因解除劳动合同 公司单方面解除劳动合同,为什么要我写因个人原因? 解除劳动合同的原因怎么写 关于个人原因要求雇主解除劳动合同 我个人因公司原因想要终止劳动合同该怎么写
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com