下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上一、实验目的1.复习堆栈的基础知识2.练习入栈出栈操作二、实验设备装有运行C语言环境的计算机。三、实验内容实验一1.对下述给定程序,完成:1)阅读并运行程序。2)在有/* */的语句后加注释,说明语句功能2.编程完成在具有10个元素的堆栈的栈顶插入数据11。要求:调试通过并将源程序提交。四、实验步骤和结果实验一代码专心-专注-专业1. #include <stdio.h>#define stacksize 100int push(int s, int x, int *ptop)/*入栈*/int top;top = *ptop; /* top 等于传入的栈
2、的指针所在位置 */if (top = stacksize) /* 判断头指针是否等于栈的最大值 */printf("overflow"); return (0); /* 判断栈满的时候输出“overflow”程序结束 */else stop = x; /* 将传入的x值给现在栈顶所在位置 */*ptop = +top; /* 栈顶上移 */return (1); /* 栈未满时进行入栈操作 */void main()static int s100;int top = 0, result;result = push(s, 11, &top); /* 让11入栈 如果
3、成功返回1 result=1 否则result=0 */if (result = 1) /* 入栈成功 */printf("success ! n"); printf("top=%d", top); /* 入栈成功 输出sucess 并且把栈顶位置输出 */else printf("failure!");/*入栈失败 输出failure*/2. #include <stdio.h>#define stacksize 100int pop(int s , int *ptop, int *py)/* 出栈函数 */ int t
4、op; top=*ptop;/* top 等于传入栈顶指针所在位置值 */ if(top=0)/* 位置=0 栈空*/ printf("stack empty"); return( 0); /*栈空时 输出 stack empty 返回值0 */ else -top; *py=stop; /* 将栈顶元素弹出 */ *ptop=top;/*将下移的栈顶指针值 赋值给 *ptop */ return(1); void main()static int s20=10,20,30; int top=3,result,y;result=pop(s,&top,&y);
5、/*出栈函数调用 成功出栈后 result=1 否则等于0 */if(result =1) printf ("success ! n"); printf ("top=%d,y=%d ", top,y);/* 成功出栈后输出success 并且将栈顶指针位置值和栈顶元素值输出 */else printf("failure!");插入代码#include <stdio.h>#define stacksize 100int pop(int s , int *ptop, int *py)/* 出栈函数 */ int top; to
6、p=*ptop;/* top 等于传入栈顶指针所在位置值 */ if(top=0)/* 位置=0 栈空*/ printf("stack empty"); return( 0); /*栈空时 输出 stack empty 返回值0 */ else -top; *py=stop; /* 将栈顶元素弹出 */ *ptop=top;/*将下移的栈顶指针值 赋值给 *ptop */ return(1); int push(int s, int x, int *ptop)/*入栈*/int top;top = *ptop; /* top 等于传入的栈的指针所在位置 */if (top
7、= stacksize) /* 判断头指针是否等于栈的最大值 */printf("overflow"); return (0); /* 判断栈满的时候输出"overflow"程序结束 */else stop = x; /* 将传入的x值给现在栈顶所在位置 */*ptop = +top; /* 栈顶上移 */return (1); /* 栈未满时进行入栈操作 */void main()static int s20=10,20,30,15,2,1,8,9,8,7; int top=9,a,y,b; a=push(s,11,&top);if ( a=
8、1) /* 入栈成功 */printf("n 入栈成功! n"); printf("top=%d", top); /* 入栈成功 输出sucess 并且把栈顶位置输出 */b=pop(s,&top,&y);/*出栈函数调用 成功出栈后 result=1 否则等于0 */if(b =1) printf ("n 出栈成功! n"); printf ("top=%d,y=%d n", top,y);/* 成功出栈后输出success 并且将栈顶指针位置值和栈顶元素值输出 */else printf("failure!")
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新能源汽车充电站风险评估
- 2024年度金融科技人力资源派遣与产品研发合同3篇
- 2024山东地区高新技术企业劳动合同规范文本3篇
- 2024年拆迁补偿安置房交易合同
- 马鞍山职业技术学院《汽车人机工程学》2023-2024学年第一学期期末试卷
- 吕梁学院《游戏美术设计》2023-2024学年第一学期期末试卷
- 2024年度服装店铺陈列设计与管理合同
- 2024年度高品质挤塑板供应与销售协议范本版B版
- 漯河食品职业学院《建筑美术Ⅲ》2023-2024学年第一学期期末试卷
- 2025写字楼租赁合同签订有些学问
- 年产12万吨甲烷氯化物可行性研究报告
- 脑积水的护理演示文稿
- 《中级微观经济学》考试复习题库(附答案)
- 方形真空干燥机验证方案
- 肿瘤基础知识示范课件
- 肺炎链球菌介绍及肺炎链球菌肺炎介绍
- 私营企业员工年度绩效评价表
- 医院护理品管圈成果汇报缩短脑卒中静脉溶栓患者DNT完整版本PPT易修改
- 防汛物资台账参考模板范本
- 气道廓清技术及护理课件
- 体育与健康人教六年级全一册篮球基础知识(共15张PPT)
评论
0/150
提交评论