1、运动会分数统计 问题描述:
参加运动会的n个学校编号为1~n。比赛分成m个男子项目和w个女子项目,项目编号分别为1~m和m+1~m+w。由于各项目参加人数差别较大,有些项目取前五名,得分顺序为7,5,3,2,1;还有些项目只取前三名,得分顺序为5,3,2。哪些项目取前五名或前三名由学生自己设定。写一个统计程序产生各种成绩单和得分报表。 基本要求:
(1)各项目结束时,输入前三名或前五名的项目编号、运动员姓名、校名和名次(成绩); (2)产生各学校的成绩单,内容包括每个学校所取得的每项成绩的项目号、名次(成绩)、姓名和得分,并统计各学校总分;
(3)可以按学校编号、男女团体总分排序输出; (4)可以按学校编号查询学校某个项目的情况; (5)可以按项目编号查询取得前三或前五名的学校。 2、集合的并、交和差运算的程序 问题描述:
编制一个能演示执行集合的并、交和差运算的程序。 基本要求:
⑵ 集合的元素限定为小写字母符[′a′….′z ′],集合的大小n<27。 ⑵集合输入的形式为一个以\回车符\为结束标志的字符串,串中字符顺序不限,且允许出现重复字符或非法字符,程序应能自动滤去。
⑶输出的运算结果字符串中将不含重复字符或非法字符。 ⑷演示程序以用户和计算机的对话方式执行。 3、长整数的加法运算 问题描述:
设计一个实现任意长的整数进行加法、减法运算的演示程序。 基本要求: 1利用链表实现长整数的存储,每个结点含一个整型变量。 2任何整型变量的范围是-(2^15-1)~(2^15-1)。
3输入和输出形式按照中国对于长整数的表示习惯,每四位一组,组间用逗号隔开。 如:-2345,6789,3211;
4、一元多项式计算器 问题描述:
设有一元多项式Am(x) 和Bn(x).
123m
Am(x) = A0+A1x+A2x+A3x+… +Amx
123n
Bn(x) = B0+B1x+B2x+B3x+… +Bnx
试求M(x)= Am(x)+Bn(x)、M(x)= Am(x)-Bn(x)和M(x)= Am(x)×Bn(x)。 基本要求:
⑴首先判定多项式是否稀疏; ⑵分别采用顺序和链式结构实现;
⑶结果M(x)中无重复阶项和无零系数项; ⑷要求输出结果的升幂和降幂两种排列情况。 5、车厢调度问题 问题描述:
假设停在铁路调度站(如教科书中图3.1(b)所示)入口处的车厢系列的编号依次为1,2,3,…n。设计一个程序,求出所有可能由此输出的长度为n 的车厢系列。 基本要求:
⑴设计一个程序,求出由一个编号依次为1,2,、、、,n的车厢序列可能产生的所有出栈系列。 ⑵利用双向栈存储结构实现调度站和输出序列这两个栈的空间共享。 ⑶对于每个输出序列演示出所有操作序列的变化过程 。 6、文章编辑 问题描述:
输入一页文字,可以统计出文字、数字、空格的个数。 基本要求:
⑴静态存储一页文章,每行最多不超过80个字符,共N行。 ⑵分别统计出其中英文字母和空格数及整篇文章总字数。 ⑶统计某一字符串在文章中出现的次数,并输出该次数。 ⑶删除某一子串,并将后面的字符前移。
⑷存储结构使用线性表,分别用几个子函数实现相应的功能。
7、广义表的应用
要求实现的广义表的建立、查找、输出、取表头和取表尾以及求深度等。
本设计用一个主控菜单程序控制,共分为6个子系统。 (1)建立广义表 (2)输出广义表 (3)结点的查找 (4)求广义表表头 (5)求广义表表尾 (6)求广义表的深度 8、哈夫曼树及其编码 问题描述:
设计一个利用哈夫曼算法的编码系统,重复地显示并处理以下项目,直到选择退出为止。 基本要求:
⑴初始化:键盘输入字符集大小n、n个字符和n个权值,建立哈夫曼树; ⑵编码:利用建好的哈夫曼树生成哈夫曼编码; ⑶ 输出其哈夫曼树及哈夫曼编码; ⑷ 设字符集及频度如下表:
字符 空格 A B C D E F G H I J K L M 频度 197 64 13 22 32 103 21 15 47 57 5 1 20 32 字符 N O P Q R S T U V W X Y Z 频度 57 63 1 15 48 16 80 23 8 18 1 51 1 9、校园导游咨询系统的设计与实现 问题描述:
设计一个校园导游程序,为来访的客人提供各种信息查询服务。 基本要求:
⑴设计华东交通大学南区的校园平面图,所含景点不少于10个。以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。 ⑵为来访客人提供图中任意景点相关信息的查询。
⑶为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。 10、地图着色问题 问题描述:
设计地图着色软件,对江西地图中11个地级市进行着色,要求相邻地级市所使用的颜色不同,并保证使用的颜色最少。 基本要求:
⑴地图采用图型数据结构,每个地级市为一个节点,边表示对应的两个地级市相邻。 ⑵设计着色算法,保证邻接点不是同一种颜色。 ⑶演示程序以用户和计算机的对话方式进行。 11、内部排序算法比较 问题描述:
试通过随机数据比较各算法的关键字比较次数和关键字移动次数,以取得直观感受。 基本要求:
⑴至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、希尔排序、起泡排序、快速排序、选择排序、堆排序、归并排序)。
⑵待排序表的表长不小于100,其中的数据要用伪随机数产生程序产生;至少要用5组不同的输入数据作比较;比较的指标为有关键字参加的比较次数和关键字的移动次数(关键字交换计为3次移动)。 ⑶最后对结果作出简单分析,包括对各组数据得出结果波动大小的解释。 12、哈希表的设计与实现——线性探测再散列 问题描述:
设计哈希表实现电话号码查找系统。 基本要求:
⑸ 设每个记录有下列数据项:电话号码、用户名、地址;
⑹ 从键盘输入各记录,分别以电话号码和用户名为关键字建立不同的哈希表; ⑺ 采用线性探测再散列的方法解决冲突; ⑻ 查找并显示给定电话号码的记录; ⑼ 查找并显示给定用户名的记录。
13、哈希表的设计与实现——二次探测再散列 问题描述:
设计哈希表实现电话号码查找系统。 基本要求:
(1)设每个记录有下列数据项:电话号码、用户名、地址;
(2)从键盘输入各记录,分别以电话号码和用户名为关键字建立不同的哈希表; (3)采用二次探测再散列的方法解决冲突; (4)查找并显示给定电话号码的记录; (5)查找并显示给定用户名的记录。 14、哈希表的设计与实现——链地址法 问题描述:
设计哈希表实现电话号码查找系统。 基本要求:
(1)设每个记录有下列数据项:电话号码、用户名、地址;
(2)从键盘输入各记录,分别以电话号码和用户名为关键字建立不同的哈希表; (3)采用链地址法解决冲突;
(4)查找并显示给定电话号码的记录; (5)查找并显示给定用户名的记录。 15、火车售票系统的设计与实现 问题描述:
通过此系统可以实现售票、退票、车票剩余情况查询等功能。每张车票包含车次、车厢、座位信息。 基本要求:
⑴在售票、退票、查询剩余票等环节中,都必须显示出车票的信息,即车次、车厢、座位情况。 ⑵为简单起见,在此假设所有出售的车票均为同一车次的车票。
⑶退票时,必须是车站售出的车票才能退,否则视为无效票,不能退票,而且退票可以再次销售。 16、图书管理系统的设计与实现 问题描述:
设计一个计算机管理系统完成图书管理基本业务。 基本要求:
⑴每种书的登记内容包括书号、书名、著作者、现存量、库存量和借阅信息;
⑵对书号建立索引顺序表以提高查找效率; ⑶系统主要功能如下:
①采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加; ②借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量; ③归还:注销对借阅者的登记,改变该书的现存量。 17、客户消费积分管理系统的设计与实现 问题描述:
针对客户的消费情况,进行客户管理,根据客户的消费积分对客户实行不同程度的打折优惠。 基本要求:
⑴采用一定的存储结构进行客户信息的存储; ⑵对客户的信息可以进行修改、删除、添加; ⑶能够根据消费情况进行客户积分的累加;
⑷根据积分情况,对客户实行不同程度的打折优惠; 18、产品进销存管理系统的设计与实现 问题描述:
针对某一种行业的库房的产品进销存情况进行管理。 基本要求:
⑴采用一定的存储结构对库房的货品及其数量进行分类管理; ⑵可以进行产品类的添加、产品的添加、产品数量的添加;
⑶能够查询库房每种产品的总量、进货日期、销出数量、销售时间等。 19、学生成绩管理系统的设计与实现 问题描述:
能够实现对学生成绩的常用管理功能。 基本要求:
⑴采用一定的存储结构对学生成绩进行管理;
⑵可以进行成绩的录入、查询、修改、删除等操作;
⑶可以查询某门课程的平均分,学生的排名,不同分数段的学生人数及学生信息等; ⑷可以查询某学生的各课程分数,总分及学生的班级排名等; ⑸可以按学号排序输出全部学生的成绩信息、总分及班级排名等。 20、通讯录管理系统的设计与实现——线性表 任务:利用线性表完成通讯录的一般性管理工作: (1) 添加信息;
(2) 显示信息:可以按照手机或联系人的姓名拼音排序显示; (3) 查找:可用不同的关键字作为查找的依据,进行查找; (4) 编辑信息; (5) 删除信息; (6) 保存到文件;
要求:(1)界面友好,可反复操作。
(2)每条记录至少包括姓名、手机、QQ、电子邮箱、城市、邮编等信息。 21、通讯录管理系统的设计与实现——哈希表 任务:利用哈希表完成通讯录的一般性管理工作: (1)添加信息;
(2)显示信息:可以按照手机或联系人的姓名拼音排序显示; (3)查找:可用不同的关键字作为查找的依据,进行查找; (4)编辑信息; (5)删除信息;
(6)保存到文件; 要求:
(1)界面友好,可反复操作。
(2)每条记录至少包括姓名、手机、QQ、电子邮箱、城市、邮编等信息。 22、简单目录管理系统的设计与实现
任务:利用树型结构设计并实现一个简单的目录管理系统,该系统可以对所有目录进行管理,如目录的新建、删除、查询、目录名称修改、按某种顺序输出所有目录(树的遍历操作)、以树型结构输出所有目录等功能。
23、最短旅程的求解
任务:有n个城市(编号从1到n),它们之间通过双向的道路相连。那里只有n-1条道路,但是,它们的连接方式使得从任意城市都可以走到其他的任何城市。 一天,某个游客到了编号为k的城市。他计划从城市k开始,游遍所有的城市m1,m2,m3……,mi,…(不一定要按这个顺序旅游)。每个城市mi都是不同的,并且,也与k不同。他想要以最短的路程旅行完所有的城市(从城市k开始)。请你帮助计算一下,旅游完上述的城市最短需要多少路程。 24、迷宫求解
任务:以一个m*n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。
要求:首先实现一个栈类型,然后编写一个求解迷宫的非递归程序。求得的通路以三元组(i,j,d)的形式输出,其中(i,j)指示迷宫中的一个坐标,d表示走到下一坐标的方向。 25、家谱管理系统的设计与实现
任务:设计并实现一个简单的家谱管理系统。 基本要求:
(1)建立家族关系并能存储到文件中。 (2)实现家族成员的添加、删除功能。
(3)可以查询家族成员的双亲、祖先、兄弟、 孩子和后代等信息。 (4)按某种顺序输出家谱信息(树的遍历操作)、以树型结构输出家谱资料等功能。 26、宿舍管理查询软件
任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求: (1)采用交互工作方式;
(2)可以增加、删除、修改信息;
(3)建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序; (4) 查询: a.按姓名查询 ;b.按学号查询 ;c按房号查询 (5) 输出任一查询结果(可以连续操作)。 27、语言中平衡符号的问题
要求:设C语言程序代码中包含如下符号/* */,(),[],{},编写程序检测一段C代码中上述符号是否正确。
28、算术表达式求解
问题描述:给定一个算术表达式,通过程序求出最后的结果。 基本要求:
(1)从键盘输入要求解的算术表达式;
(2)采用栈结构进行算术表达式的求解过程; (3)能够判断算术表达式正确与否; (4)对于错误表达式给出提示;
(5)对于正确的表达式给出最后的结果,并可以显示运算的整个过程。 29、表达式求值,可供小学生作业,并能给出分数
要求:建立试题库文件,随机产生n个题目;题目涉及加减乘除,带括号的混合运算;随时可以退出;