实验二 栈和队列

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验二:栈和队列

一、实验目的

1.掌握栈这种数据结构特性及其主要存储结构,并能在现实生活中灵活运用。

2.掌握队列这种数据结构特性及其主要存储结构,并能在现实生活中灵活运用。

二、实验环境

已安装CodeBlocks软件的计算机;

三、实验学时

2学时

四、实验要求

1.熟悉c语言的语法知识;

2.掌握栈的存储结构—顺序栈的定义、构造、获得栈顶元素、入栈、出栈等基本操作;

3.掌握队列的存储结构的定义、构造、销毁、插入、删除等基本操作;

4.完成实验报告。

五、实验内容

(注:所写代码要有良好的输入和输出提示,源文件的命名格式为:学号姓名,要求结果截图要包括学号姓名。)

1.参考课本代码,完成栈的定义、构造、获得栈顶元素、进栈、出栈等函数的编写。要求在主函数中实现对以上操作的调用,编写一个算法判断给定的字符向量是否为回文。回文是指正读与反读均相同的字符序列,如“abba”和“abdba”均是回文,但“good”就不是回文。

提示:入栈的元素应为字符

第一步:用一个字符数组来存储字符向量。

第二步:将字符数组入栈。(字符数组结束标识为’\0’)

第三步:出栈(出到栈空为止)取栈顶元素一一和字符数组的元素(从下标0开始)对比,若有一个不等则不是回文,若都相等则为回文。

附加题:输入中缀表达式,把中缀转成后缀表达式,然后计算表达式的值输出。

2.参考课本代码,完成队列的链式存储结构的定义、取对头、出队、入队等函数的编写,并自己独立完成链式队列的输出函数编写(从队头开始输出)。要求在主函数中实现对以上操作的调用,实现以下功能:

(1)队列初始化为空队列。

(2)键盘输入偶数时,入队。

(3)键盘输入奇数时,出队。

(4)每输入一个整数,显示操作后队列中的值。

(5)键盘输入0时,算法结束。

附加题:打印杨辉三角形。

相关文档
最新文档