信管软件11级数据结构课程设计(2)
时间:2026-01-20
时间:2026-01-20
3.
退票: 可退票,退票后修改相关数据文件;
客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。 要求:
根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;
文章编辑(难度***)
功能:从键盘输入一页文字,静态存储在一个文件中 要求:(1)分别统计出其中英文字母数和空格数及整篇文章总字数;
(2)统计某一字符串在文章中出现的次数,并输出该次数; (3)删除某一子串,并将后面的字符前移。
存储结构使用线性表,分别用几个子函数实现相应的功能;
输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。
输出形式:(1)分行输出用户输入的各行字符;
(2)分4行输出"全部字母数"、"数字个数"、"空格个数"、"文章总字数" (3)输出删除某一字符串后的文章;
4. 哈希表设计[问题描述]
针对某个集体中人名设计一个哈希表,使得平均查找长度不超过R,并完成相应的建表和查表程序。
[基本要求]
假设人名为中国人姓名的汉语拼音形式。待填入哈希表的人名共有30个,取平均查找长度的上限为2。哈希函数用除留余数法构造,用线性探测再散列法或链地址法处理冲突。
[测试数据]
取读者周围较熟悉的30个人名。
[选作内容]
(1) 从教科书上介绍的集中哈希函数构造方法中选出适用者并设计几个不同的哈希函数,比较他们的地址冲突率(可以用更大的名字集合作实验)。
(2) 研究这30个人名的特点,努力找一个哈希函数,使得对于不同的拼音名一定不发生地址冲突。
(3) 在哈希函数确定的前提下尝试各种不同处理冲突的方法,考察平均查找长度的变化和造好的哈希表中关键字的聚集性。
5. 宿舍管理查询软件(难度**)
任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:
(1)建立数据文件 ,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)
(2)实现如下查询功能:
按姓名查询 按学号查询 按房号查询
(3)打印任一查询结果(可以连续操作)