欢迎来到天天文库
浏览记录
ID:27606130
大小:106.50 KB
页数:8页
时间:2018-12-05
《数据结构课程设计题目与要求》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《数据结构课程设计》题目与要求序号知识模块题号题目名称选题学生一选题学生二1线性表及其应用1.1运动会分数统计21.2一元稀疏多项式计算器31.3猴子选大王4栈和队列及其应用2.1停车场管理52.2车厢调度62.3表达式求值72.4航空客运订票系统8串及其应用3.1文本格式化93.2简单行编辑程序10图的应用4.1计算机专业教学计划编制114.2高校专用通信网络建设124.3校园导游咨询134.4连云港市景点导游咨询144.5全国著名景点导游咨询15查找和排序5.1图书管理系统165.2通讯录管理系统175.3学生成绩管理系统1
2、85.4简单的员工管理系统195.5汽车牌照管理系统205.6多关键字排序215.7纸牌游戏【1.1】运动会分数统计[问题描述]参加运动会有n个学校,学校编号为1……n。比赛分成m个男子项目,和w个女子项目。项目编号为男子1……m,女子m+1……m+w。不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些取前五名或前三名由学生自己设定。(m<=20,n<=20)[基本要求](1)可以输入各个项目的前三名或前五名的成绩;(2)能统计各学校总分;(3)可以按学校编号、学校总分
3、、男女团体总分排序输出;(4)可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校;(5)各学校分数为整型,学校名称、运动项目的名称为字符型;(6)界面友好,有中文提示。【1.2】一元稀疏多项式计算器[问题描述] 设计一个一元稀疏多项式简单计算器。[基本要求] 一元稀疏多项式简单计算器的基本功能是: (1)输入并建立多项式; (2)输出多项式,输出形式为整数序列:n,c1,e1,c2,e2,...,cn,en,其中n是多项式的项数,ci,ei分别是多项式的指数,序列按指数降序排列;
4、 (3)多项式a和b相加,建立多项式a+b; (4)多项式a和b相减,建立多项式a-b。[实现提示] 用带表头结点的单链表存储多项式。【1.3】猴子选大王[问题描述]一堆猴子都有编号,编号是1,2,3...m,这群猴子(m个)按照1~m的顺序围坐一圈,从第1开始数,每数到第N个,该猴子就要离开此圈,这样依次下来,直到圈中只剩下最后一只猴子,则该猴子为大王。[基本要求](1)输入数据:输入m、n,m、n为整数,且n5、描述]设停车场是一个可停放n辆车的狭长通道,且只有一个大门可供汽车进出。在停车场内,汽车按到达的先后次序,由北向南依次排列(假设大门在最南端)。若车场内已停满n辆车,则后来的汽车需在门外的便道上等候,当有车开走时,便道上的第一辆车即可开入。当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门后,其它车辆再按原次序返回车场。每辆车离开停车场时,应按其停留时间的长短交费(在便道上停留的时间不收费)。[基本要求](1)要求以顺序栈模拟停车场,以链队列模拟便道。(2)从终端读入汽车到达或离去的数据,每组数6、据包括三项:①是“到达”还是“离去”;②汽车牌照号码;③“到达”或“离去”的时刻。与每组输入信息相应的输出信息为:如果是到达的车辆,则输出其在停车场中或便道上的位置;如果是离去的车辆,则输出其在停车场中停留的时间和应交的费用。【2.2】车厢调度[问题描述] 假设在铁路调度站(如教科书图3.1(b)所示)入口处的车厢序列的编号依次为1,2,3,...,n。设计一个程序,求出所有可能由此输出的长度为n的车厢序列。[基本要求] 首先在教科书上提供的栈的顺序存储结构Seqstack之上实现栈的基本操作,即实现栈类型。程序对栈的任7、何存取(即更改,读取和状态判别等操作)必须借助于基本操作进行。[实现提示] 一般的说,在操作过程的任何状态下都有两种可能的操作:"入"和"出"。每个状态下处理问题的方法都是相同的,这说明问题本身具有天然的递归特性,可以考虑用递归算法实现,输入序列可以仅由一对整形变量表示,即给出序列头/尾编号。输出序列用栈实现是方便的(思考:为什么不应该用队列实现)只要再定义一个栈,打印操作print(s),自底至顶顺序的印出栈元素的值。【2.3】表达式求值[问题描述]一个算术表达式是由操作数(operand)、运算符(operator)和界8、限符(delimiter)组成的。假设操作数是正整数,运算符只含加减乘除等四种运算符,界限符有左右括号和表达式起始、结束符“#”,如:#(7+15)*(23-28/4)#。引入表达式起始、结束符是为了方便。编程利用“算符优先法”求算术表达式的值。[基本要求](1
5、描述]设停车场是一个可停放n辆车的狭长通道,且只有一个大门可供汽车进出。在停车场内,汽车按到达的先后次序,由北向南依次排列(假设大门在最南端)。若车场内已停满n辆车,则后来的汽车需在门外的便道上等候,当有车开走时,便道上的第一辆车即可开入。当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门后,其它车辆再按原次序返回车场。每辆车离开停车场时,应按其停留时间的长短交费(在便道上停留的时间不收费)。[基本要求](1)要求以顺序栈模拟停车场,以链队列模拟便道。(2)从终端读入汽车到达或离去的数据,每组数
6、据包括三项:①是“到达”还是“离去”;②汽车牌照号码;③“到达”或“离去”的时刻。与每组输入信息相应的输出信息为:如果是到达的车辆,则输出其在停车场中或便道上的位置;如果是离去的车辆,则输出其在停车场中停留的时间和应交的费用。【2.2】车厢调度[问题描述] 假设在铁路调度站(如教科书图3.1(b)所示)入口处的车厢序列的编号依次为1,2,3,...,n。设计一个程序,求出所有可能由此输出的长度为n的车厢序列。[基本要求] 首先在教科书上提供的栈的顺序存储结构Seqstack之上实现栈的基本操作,即实现栈类型。程序对栈的任
7、何存取(即更改,读取和状态判别等操作)必须借助于基本操作进行。[实现提示] 一般的说,在操作过程的任何状态下都有两种可能的操作:"入"和"出"。每个状态下处理问题的方法都是相同的,这说明问题本身具有天然的递归特性,可以考虑用递归算法实现,输入序列可以仅由一对整形变量表示,即给出序列头/尾编号。输出序列用栈实现是方便的(思考:为什么不应该用队列实现)只要再定义一个栈,打印操作print(s),自底至顶顺序的印出栈元素的值。【2.3】表达式求值[问题描述]一个算术表达式是由操作数(operand)、运算符(operator)和界
8、限符(delimiter)组成的。假设操作数是正整数,运算符只含加减乘除等四种运算符,界限符有左右括号和表达式起始、结束符“#”,如:#(7+15)*(23-28/4)#。引入表达式起始、结束符是为了方便。编程利用“算符优先法”求算术表达式的值。[基本要求](1
此文档下载收益归作者所有