收藏 分销(赏)

顺序栈插入及删除.doc

上传人:仙人****88 文档编号:7389140 上传时间:2025-01-02 格式:DOC 页数:3 大小:77KB 下载积分:10 金币
下载 相关 举报
顺序栈插入及删除.doc_第1页
第1页 / 共3页
顺序栈插入及删除.doc_第2页
第2页 / 共3页


点击查看更多>>
资源描述
实验四 顺序栈的插入和删除 实验四 顺序栈的插入和删除 姓名: 学号: 日期: 一、实验目的: 1.熟悉栈的基本结构、特点 2.熟悉顺序栈的插入和删除的基本算法和实现 二、实验条件: 1.硬件:一台微机 2.软件:Windows操作系统和C语言系统(MS VC++6.0) 三、实验方法: 确定存储结构后,上机调试实现顺序栈的插入和删除运算。 四、实验要求: 1、编写函数实现顺序栈中的删除功能 2、 编写函数实现顺序栈中的插入功能 2.编写程序实现以下功能 (1) 创建一个顺序栈:12,15,87,96,3; (2) 调用删除函数,分别令栈中的前三个元素出栈; (3) 调用插入函数,使元素6入栈; (4) 输出最终顺序栈中的元素。 五、 算法流程图: 六、实验算法: #include <stdio.h> #define MAXSIZE 100 /*栈中最多100个元素*/ int stack[MAXSIZE]; int top=-1; void push(int x) /*进栈函数*/ { if(top==MAXSIZE-1) { printf("栈满溢出\n"); exit(1); /*非正常中断*/ } else { top++; stack[top]=x; } } int pop() /*出栈函数*/ { int x; if(top==-1) { printf("栈空溢出\n"); exit(1); /*非正常中断*/ } else { x=stack[top]; top--; } return x; } main() { int n,x=1,i; printf("\n请输入进栈初始化元素:(0为结束符)\n"); while(x) { scanf("%d",&x); push(x); } top--; printf("\n请输入出栈个数:\n"); scanf("%d",&n); printf("\n出栈元素依次为:\n"); for(;n;n--) { printf("%d ",pop()); } printf("\n请输入进栈元素:\n"); scanf("%d",&x); push(x); printf("栈内元素有:\n"); for(i=0;i<=top;i++) { printf("%d ",stack[i]); } printf("\n"); } 七、算法介绍: 1. 算法功能:输入一个顺序栈,按要求出栈,并进栈,然后再将链表输出 2. 算法利用宏定义MAXSIZE,提高算法兼容性 八、效果图: 第 3 页 共 3 页
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服