《C语言程序设计》课程设计内容
本次课程设计采用编写程序的形式,利用结构化程序设计方法以及C的编程思想来完成题目问题描述中所要求的设计任务,功能模块化。本课程设计利用C语言中所学习的数据类型,数据结构、语句结构、运算方法、函数、数组,指针等知识,实现各个题目的要求,学生在阅读参考书和收集资料的基础上,对算法进行独立的思考和运算,并独立地完成课程设计报告书。一旦发现课程设计报告有雷同,均为不及格。课程设计报告书必须采用打印稿的形式。
课程设计一:图书信息管理系统设计
图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等,使之能提供以下功能:
A. 系统以菜单方式工作
B. 图书信息录入功能(图书信息用文件保存)--输入
C. 图书信息浏览功能--输出v
D. 查询和排序功能:(至少一种查询方式)--算法:a按书名查询;b按作者名查询
E. 图书信息的删除与修改(可选项)v
需求说明:
1) 图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等并且要求职工号不重复;
2) 录入的图书信息要求用文件形式保存,并可以对其进行浏览、查询、修改、删除等基本操作;
3) 对图书信息查询应能够分别按书名及作者名两种方式进行,要求能返回所有符合条件的职工的信息;
4) 系统应以菜单方式工作,应为用户提供清晰的使用提示,依据用户的选择来进行各种处理
课程设计二:图书管理系统设计
主要包括管理图书的库存信息、每一本书的借阅信息以及每一个人的借书信息。每一种图书的库存信息包括编号、书名、作者、出版社、出版日期、金额、类别、总入库数量、当前库存量、已借出本数等。每一本被借阅的书都包括如下信息:编号、书名、金额、借书证号、借书日期、到期日期、罚款金额等。每一个人的借书信息包括借书证号、姓名、班级、学号等。
系统功能包括以下方面:
A、借阅资料管理
要求把书籍、期刊、报刊分类管理,这样的话操作会更加灵活和方便,可以随时对其相关资料进行添加、删除、修改、查询等操作。
B、借阅管理
(1) 借出操作
(2) 还书操作
(3) 续借处理
提示:以上处理需要互相配合以及赔、罚款金额的编辑等操作完成图书借还业务的各种登记。例如:读者还书时不仅更新图书的库存信息,还应该自动计算该书应罚款金额。并显示该读者所有至当日内到期未还书信息。
C、读者管理
读者等级:对借阅读者进行分类处理,例如可分为教师和学生两类。并定义每类读者的可借书数量和相关的借阅时间等信息。
读者管理:对读者信息可以录入,并且可对读者进行挂失或注销、查询等服务的作业。
D、统计分析
随时可以进行统计分析,以便及时了解当前的借阅情况和相关的资料状态,统计分析包括借阅排行榜、资料状态统计和借阅统计、显示所有至当日内到期未还书信息等功能分析。
E 系统参数设置:可以设置相关的罚款金额,最多借阅天数等系统服务器参数。
课程设计三:学生信息管理
问题描述
学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。试设计一学生信息管理系统,使之能提供以下功能:
1) 系统以菜单方式工作
2) 学生信息录入功能(学生信息用文件保存)---输入
3) 学生信息浏览功能——输出
4) 查询、排序功能——算法:a按学号查询;b按姓名查询
5) 学生信息的删除与修改(可选项)
功能要求
1) 界面简单明了;
2) 有一定的容错能力,比如输入的成绩不在0~100之间,就提示不合法,要求重新输入;
3) 最好用链表的方式实现。
算法分析
首先,一个学生包括这么多的属性,应该考虑定义一个结构,其次,我们应该考虑数据的存储形式:是定义一个数组来存储,还是定义一个链表呢?在这里假如我们以数组的方式来存储,当然可以,但是我们知道,假如我们定义一个数组的话,我们首先必须知道学生人数大概是多少,以便我们确定数组的大小,但是题目中没有给出,而且题目要求中有大量的删除、插入操作,所以用链表的方式比较方便。
对于菜单的实现,其实也比较简单,首先我们用printf语句把程序的功能列出来,然后等待用户输入而执行不同的函数,执行完了一个功能后又回到菜单。文件的读写操作大家参照书中的有关文件的章节。
课程设计四:学生综合测评系统
每个学生的信息为:学号、姓名、性别、家庭住址、联系电话、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、品德成绩、任课教师评分、综合测评总分、综合测评名次。考试平均成绩、同学互评分、品德成绩、任课教师评分分别占综合测评总分的60%,10%,10%,20%。
A、学生信息处理
(1) 输入学生信息、学号、姓名、性别、家庭住址、联系电话,按学号以小到大的顺序存入文件中。
提示:学生信息可先输入到数组中,排序后可写到文件中。
(2) 插入(修改)同学信息:
提示:先输入将插入的同学信息,然后再打开源文件并建立新文件,把源文件和输入的信息合并到新文件中(保持按学号有序)若存在该同学则将新记录内容替换源内容,
(3) 删除同学信息:
提示:输入将删除同学号,读出该同学信息,要求对此进行确认,以决定是否删除将删除后的信息写到文件中。
(4) 浏览学生信息:
提示:打开文件,显示该文件的学生信息。
B、学生数据处理:
(1) 按考试科目录入学生成绩并且按公式:考试成绩=(语文+数学+外语)/3 计算考试成绩,并计算考试名次,提示:先把学生信息读入数组,然后按提示输入每科成绩,计算考试成绩,求出名次,最后把学生记录写入一个文件中。
(2) 学生测评数据输入并计算综合测评总分及名次。
提示:综合测评总分=(考试成绩)*0.6+(同学互评分)*0.1+品德成绩*0.1+任课老师评分*0.2。
(3) 学生数据管理
提示:输入学号,读出并显示该同学信息,输入新数据,将改后信息写入文件
(4) 学生数据查询:
提示:输入学号或其他信息,即读出所有数据信息,并显示出来。
C、学生综合信息输出
提示:输出学生信息到屏幕。
课程设计题五:个人通讯录管理系统
建立一通讯录,输入姓名、电话号码、住址等信息,然后对通信簿进行显示、查找、添加、修改及删除。
功能要求
(1) 通讯录的每一条信息包括姓名、单位、固定电话、移动手机、分类(如同事、朋友、同学、家人等)、EMAIL、QQ等。
(2) 输入功能:可以一次完成若干条信息的输入。
(3) 显示功能:完成全部通讯录信息的显示(一屏最多显示10条,超过十条应能够自动分屏显示)
(4) 查找功能:可以按姓名等多种方式查找通讯信息
(5) 增加、删除、修改功能:完成通讯录信息的多种更新
课程设计六:教师工资管理系统
每个教师的信息为:教师号、姓名、性别、单位名称、家庭住址、联系电话、基本工资、津贴、生活补贴、应发工资、电话费、水电费、房租、所得税、卫生费、公积金、合计扣款、实发工资。注:应发工资=基本工资+津贴+生活补贴;合计扣款=电话费+水电费+房租+所得税+卫生费+公积金;实发工资=应发工资 - 合计扣款。
A、教师信息处理
(1) 输入教师信息
(2) 插入(修改)教师信息:
(3) 删除教师信息:
(4) 浏览教师信息:
提示:具体功能及操作参考题1。
B、教师数据处理:
(1) 按教师号录入教师基本工资、津贴、生活补贴、电话费、水电费、房租、所得税、卫生费、公积金等基本数据。
(2) 教师实发工资、应发工资、合计扣款计算。
提示:计算规则如题目。
(3) 教师数据管理
提示:输入教师号,读出并显示该教师信息,输入新数据,将改后信息写入文件
(4) 教师数据查询:
提示:输入教师号或其他信息,即读出所有数据信息,并显示出来。
(5) 教师综合信息输出
提示:输出教师信息到屏幕。
课程设计七:教师工作量管理系统
计算每个老师在一个学期中所教课程的总工作量。(教师单个教学任务的信息为:教师号、姓名、性别、职称、认教课程、班级、班级数目、理论课时、实验课时、单个教学任务总课时)
A、教师信息处理
(1) 输入教师授课教学信息,包括教师号、姓名、性别、职称、认教课程、班级、班级数目、理论课时、实验课时。
(2) 插入(修改)教师授课教学信息:
(3) 删除教师授课教学信息:
(4) 浏览教师授课教学信息:
B、教师工作量数据处理:
(1) 计算单个教学任务总课时。计算原则如下表:
班级数目
|
单个教学任务总课时
|
2
|
1.5*(理论课时+实验课时)
|
3
|
2*(理论课时+实验课时)
|
>=4
|
2.5*(理论课时+实验课时)
|
(2) 计算一个教师一个学期总的教学工作量。总的教学工作量=所有单个教学任务总课时之和。
(3)教师数据查询:
提示:输入教师号或其他信息,即读出所有数据信息,并显示出来。
C、教师综合信息输出
提示:输出教师信息到屏幕。
课程设计八:学生成绩统计管理系统
主要功能包括:
A、输入一个班级的学生的基本信息(包括学号,姓名,性别,5门课程成绩)。
B、按姓名或者学号查找、修改、删除和保存各个学生的信息。
C、计算每个学生各门功课总分和平均分,按学号或总分排序输出每个学生的基本信息及总分、平均分和名次。
D、计算全班各门功课的平均分,显示每门课程中低于平均分的每一个学生的学号,姓名,性别,科目,成绩。
E、显示每门科目中,成绩在90分以上的学生信息,以及每门科目中不及格的学生信息。
F、用菜单进行管理
G、只有正确输入用户名密码才能使用此系统。
H、所有内容能够保存到文件中。下次进入系统是从文件中读取原有信息。