08计科数据结构课程设计题目(2011.8.26)

更新时间:2023-04-21 13:52:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

挺好的文章

1-20个题目的总的模块要求:

第一个模块——主函数main()的功能是:根据选单的选项调用各函数,并完成相应的功能。 第二个模块——Menu()的功能是:显示提示选单。

第三个模块——Quit()的功能是:退出选单。

第四个模块——Create()的功能是:创建新的通讯录。

第五个模块——Add()的功能是:在通讯录的末尾,写入新的信息,并返回选单。 第六个模块——Find()的功能是:按要求查询相关的信息,如果找到了,则显示该信息,如果未找到,则提示文件中没有该信息,并返回选单。

第七个模块——Alter()的功能是:修改某人的信息,如果未找到要修改的人,则提示通讯录中没有此人的信息,并返回选单。

第八个模块——Delete()的功能是:删除某人的信息,如果未找到要删除的人,则提示通讯录中没有此人的信息,并返回选单。

第九个模块——List()的功能是:显示通讯录中的所有记录。

一、用链表实现以下系统,完成链表的建立(至少包括10个结点),以及链表中信息(结点)的插入、查找、删除、修改、输出等操作,具体的模块要求见第1行。

要求用“文件”存储数据。

1.通讯录管理系统的设计与实现

(1)通讯者信息包括:编号(char num[3])、姓名(char name[9])、性别(char sex[1])、电话(char phone[11])

(2)除了总的要求外,还需统计通讯录中男性人数及女性人数

2.学生信息管理系统的设计与实现

(1)学生信息包括:学号(char num[3])、姓名(char name[9])、性别(char sex[1])、成绩(float score)

(2)除了总的要求外,还需计算学生的平均成绩、以及优秀的人数

3.教师信息管理系统的设计与实现

(1)教师信息包括:工号(char num[3])、姓名(char name[9])、性别(char sex[1])、课时(int time)

(2)除了总的要求外,还需计算所有教师的总的课时数、以及课时超过200的人数

4.图书管理信息系统的设计与实现

(1)图书信息包括:书号(char num[3])、书名(char name[9])、作者(char author[9])、定价(float money)

(2)除了总的要求外,还需计算查找同一作者的所有书、以及定价高于50的书的数目

5.商店售货管理系统的设计与实现

(1)商品信息包括:商品号(char num[3])、商品名(char name[9])、商品类别(char type[6])、定价(float money)

(2)除了总的要求外,还需计算商品的平均定价、并按定价由高到低排序

6. 职工工资管理系统的设计与实现

(1)职工信息包括:职工号(char num[3])、职工名(char name[9])、职工级别(char type[6])、工资(float money)

(2)除了总的要求外,还需计算职工的平均工资、并按工资由高到低排序

7. 房屋销售管理信息系统的设计与实现

(1)房屋信息包括:房屋号(char num[3])、售房者姓名(char name1[9])、中介职工姓名(char name2[6])、房屋销售价格(float money)

(2)除了总的要求外,还需计算超过200万的房屋总数,并输出这些房屋的详细信息。

挺好的文章

(1)货物信息包括:货物号(char num[3])、货物名(char name[9])、货物类别(char type[6])、价格(float money)

(2)除了总的要求外,还需计算低于20块钱的货物总数,并输出日用品类的详细信息。

9.教师职称管理系统的设计与实现

(1)教师信息包括:编号(char num[3])、姓名(char name[9])、性别(char sex[5])、职称(char prof[6])、所在院系(char dept[10])

(2)除了总的要求外,还需按职称级别由高到低排序,并统计各职称人数及各院系各职称人数。

10.宾馆客房管理系统的设计与实现

(1)客房信息包括:房间号(char num[3])、房间类型(char type[10])、价格(float money)、是否入住(int flag)

(2)除了总的要求外,还需计算各类客房的收入情况,并按楼层统计没有入住的客房数。

二、用顺序表实现以下系统,完成顺序表的建立(至少包括10个元素),以及顺序表中信息(结点)的插入、查找、删除、修改、输出等操作。

11.通讯录管理系统的设计与实现

(1)通讯者信息包括:编号(char num[3])、姓名(char name[9])、性别(char sex[1])、电话(char phone[11])

(2)除了总的要求外,还需统计通讯录中男性人数及女性人数

12.学生信息管理系统的设计与实现

(1)学生信息包括:学号(char num[3])、姓名(char name[9])、性别(char sex[1])、成绩(float score)

(2)除了总的要求外,还需计算学生的平均成绩、并按成绩由高到低排序

13.教师信息管理系统的设计与实现

(1)教师信息包括:工号(char num[3])、姓名(char name[9])、性别(char sex[1])、课时(int time)

(2)除了总的要求外,还需计算所有教师的总的课时数、以及课时超过200的人数

14.图书管理信息系统的设计与实现

(1)图书信息包括:书号(char num[3])、书名(char name[9])、作者(char author[9])、定价(float money)

(2)除了总的要求外,还需计算查找同一作者的所有书、以及定价高于50的书的数目

15.商店售货管理系统的设计与实现

(1)商品信息包括:商品号(char num[3])、商品名(char name[9])、商品类别(char type[6])、定价(float money)

(2)除了总的要求外,还需计算商品的平均定价、并按定价由高到低排序

16. 职工工资管理系统的设计与实现

(1)职工信息包括:职工号(char num[3])、职工名(char name[9])、职工级别(char type[6])、工资(float money)

(2)除了总的要求外,还需计算职工的平均工资、并按工资由高到低排序

17. 房屋销售管理信息系统的设计与实现

(1)房屋信息包括:房屋号(char num[3])、售房者姓名(char name1[9])、中介职工姓名(char name2[6])、房屋销售价格(float money)

(2)除了总的要求外,还需计算超过200万的房屋总数,并输出这些房屋的详细信息。

挺好的文章

(1)货物信息包括:货物号(char num[3])、货物名(char name[9])、货物类别(char type[6])、价格(float money)

(2)除了总的要求外,还需计算低于20块钱的货物总数,并输出日用品类的详细信息。

19.教师职称管理系统的设计与实现

(1)教师信息包括:编号(char num[3])、姓名(char name[9])、性别(char sex[5])、职称(char prof[6])、所在院系(char dept[10])

(2)除了总的要求外,还需按职称级别由高到低排序,并统计各职称人数及各院系各职称人数。

20.宾馆客房管理系统的设计与实现

(1)客房信息包括:房间号(char num[3])、房间类型(char type[10])、价格(float money)、是否入住(int flag)

(2)除了总的要求外,还需计算各类客房的收入情况,并按楼层统计没有入住的客房数。

21(耿天).航空售票处的服务系统

要求:设计民航售票处的计算机系统可以为客户提供下列各项服务:

录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)

查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况; 订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;

退票:可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。

修改航班信息:当航班信息改变可以修改航班数据文件

要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;

22.无向图应用问题

任务:如果以五向网表示n个城市之间通信网络的建设计划,顶点表示城市,边上的权表示该线路的造价,设计一个方案,使这个通讯网的总造价最低。

提示:这是一个求最小生成树的问题。n个城市名和各边的权值由用户输入,建立图的邻接矩阵,然后以Prim算法来求最小生成树,然后输出方案。

23. 停车场管理

设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车时间的早晚依次从停车场最里面向大门口停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。停车场内如有某辆车要开走,在它之后近来的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费。如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的

挺好的文章

车辆的次序。编制一程序模拟停车场管理。

实现提示:汽车的模拟输入信息格式可以是:(到达/离去,汽车牌照号码,到达/离去的时刻)。

例如:('A',1,5)表示一号牌照车爱5这个时刻到达,而('D',5,20)表示5号牌照车在20这个时刻离去,整个程序可以在输入信息为('E',0,0)时结束。

基本要求:要求程序输出每辆车到达后的停车位置(停车场或便道上),以及某辆车离开停车场时应交纳的费用和它在停车场内停留的时间。

24.双层停车场管理

(1)有一个两层的停车场,每层有6个车位,当第一层车停满后才允许使用第二层。(停车场可用一个二维数组实现,每个数组元素存放一个车牌号)每辆车的信息包括车牌号,层号,车位号,停车时间共4项。其中停车时间按分钟计算。

(2)假设停车场初始状态为第一层已经停有4辆车,其车位号依次为1—4,停车时间依次为20,15,10,5。即先将这四辆车的信息存入文件“car.dat”中( 数组的对应元素也要进行赋值 )

(3)停车操作:当一辆车进入停车场时,先输入其车牌号,再为它分配一个层号和一个车位号(分配前先查询车位的使用情况,如果第一层有空则必须停在第一层),停车时间设为5,最后将新停入的汽车的信息添加文件“car.dat”中,并将在此之前的所有车的停车时间加5。

(4)收费管理(取车):当有车离开时,输入其车牌号,先按其停车时间计算费用,每5分钟0.2元。(停车费用可设置一个变量进行保存),同时从文件“car.dat”中删除该车的信息,并将该车对应的车位设置为可使用状态(即二维数组对应元素清零)。按用户的选择来判断是否要输出停车收费的总计。

(5)输出停车场中全部车辆的信息。

(6)退出系统。

25.文章编辑(顺序表)

功能:输入一页文字,程序可以统计出文字、数字、空格的个数。

静态存储一页文章,每行最多不超过80个字符,共N行;要求(1)分别统计出其中英文字母数和空格数及整篇文章总字数;(2)统计某一字符串在文章中出现的次数,并输出该次数;(3)删除某一子串,并将后面的字符前移。

存储结构使用顺序表,分别用几个子函数实现相应的功能;

输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。

输出形式:(1)分行输出用户输入的各行字符;(2)分4行输出“全部字母数”、“数字个数”、“空格个数”、“文章总字数”;(3)输出删除某一字符串后的文章;

26.文章编辑(线性链表)

功能:输入一页文字,程序可以统计出文字、数字、空格的个数。

静态存储一页文章,每行最多不超过80个字符,共N行;要求(1)分别统计出其中英文字母数和空格数及整篇文章总字数;(2)统计某一字符串在文章中出现的次数,并输出该次数;(3)删除某一子串,并将后面的字符前移。

挺好的文章

存储结构使用线性链表,分别用几个子函数实现相应的功能;

输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。

输出形式:(1)分行输出用户输入的各行字符;(2)分4行输出“全部字母数”、“数字个数”、“空格个数”、“文章总字数”;(3)输出删除某一字符串后的文章;

27. 校园导航问题

设计要求:设计你的学校的平面图,至少包括10个以上的场所,每两个场所间可以有不同的路,且路长也可能不同,只找出两个场所间的最佳路径(最短路径)。

28. 迷宫问题(栈)

问题描述:

以一个m*n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。

基本要求:

首先实现一个以链表作存储结构的栈类型,然后编写一个求解迷宫的非递归程序。求得的通路以三元组(i,j,d)的形式输出,其中:(i,j)指示迷宫中的一个坐标,d表示走到下一坐标的方向,如:对于下列数据的迷宫,输出的一条通路为:(1,1,1),(1,2,2),(3,2,3),(3,1,2), 。

实现提示:

计算机解迷宫通常用的是“穷举求解”方法,即从入口出发,顺着某个方向进行探索,若能走通,则继续往前进;否则沿着原路退回,换一个方向继续探索,直至出口位置,求得一条通路。假如所有可能的通路都探索到而未能到达出口,则所设的迷宫没有通路。

可以二维数组存储迷宫数据,通常设定入口点的下标为(1,1),出口点的下标为(m,n)。为处理方便起见,可在迷宫的四周加一圈障碍。对于迷宫中任一位置,均可约定有东、南、西、北四个方向可通。

29. 迷宫问题(队列)

问题描述:

以一个m*n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。

基本要求:

首先实现一个以链表作存储结构的队列类型,然后编写一个求解迷宫的非递归程序。求得的通路以三元组(i,j,d)的形式输出,其中:(i,j)指示迷宫中的一个坐标,d表示走到下一坐标的方向,如:对于下列数据的迷宫,输出的一条通路为:(1,1,1),(1,2,2),(3,2,3),(3,1,2), 。

30. 八皇后问题

要求:试编写程序实现将八个皇后放置在国际象棋棋盘的无冲突的位置上的算法,并给出所有的解。

提示:在国际象棋上放置皇后时,任何一个皇后的水平、竖直和斜45º都不能有另一个皇后。

挺好的文章

解决该问题采用逐次试探的方法,即采用递归调用putchess函数的方法。首先将第一个皇后放于第一行第一列,然后开始向下一行递归。每一步递归中,首先检测待放置位置是否与已放置的皇后冲突,如不冲突,则进行下一行的放置,否则,选择该行的下一个位置进行检测。如整行的位置都冲突,则回到上一行,重新选择位置。

本文来源:https://www.bwwdw.com/article/d9dq.html

Top