c语言课程设计题目.doc
- 文档编号:15024744
- 上传时间:2023-06-29
- 格式:DOC
- 页数:9
- 大小:174KB
c语言课程设计题目.doc
《c语言课程设计题目.doc》由会员分享,可在线阅读,更多相关《c语言课程设计题目.doc(9页珍藏版)》请在冰点文库上搜索。
C语言课程设计题目
一、实训要求
1)C语言课程设计要求
1.可自己选定一题目,限1人选的题目只能由1人单独完成,如限3人选的题目可由1-3人完成。
2.模块化程序设计l
3.锯齿型书写格式l
4.必须上机调试通过l
2)课程设计报告内容要求:
1.课程设计题目
2.总体设计(程序设计组成框图、流程图)
3.详细设计(模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)
4.调试与测试:
调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施
5.源程序清单和执行结果:
清单中应有足够的注释
6.具体格式另附说明。
3)检查要求:
1.每个人必须有程序运行结果;
2.每个人必须交《课程设计报告》打印稿---—注:
各班班长将本班学生的课程设计报告电子版用优盘拷贝(标上学号、姓名、班级)上交。
4)打分标准:
1.根据平时上机考勤;注重平时上机成绩,教师要不定期检查学生进度,学生不得以自己有私人电脑为借口而不来上机。
2.根据程序运行结果;
3.根据《C语言课程设计报告》,学生能对自己的程序面对教师提问并能熟练地解释清楚
以上三项缺一不可,否则不能到得相应学分
二、课程设计题目:
1:
职工信息管理系统设计(限最多3人完成)
职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。
试设计一职工信息管理系统,使之能提供以下功能:
系统以菜单方式工作v
职工信息录入功能(职工信息可用文件保存)--输入v
职工信息浏览功能 --输出v
查询和排序功能:
(至少一种查询方式) --算法v
l按工资查询
l按学历查询等
职工信息删除、修改功能(任选项)v
2:
图书信息管理系统设计(限最多3人完成)
图书信息包括:
登录号、书名、作者名、分类号、出版单位、出版时间、价格等。
试设计一图书信息管理系统,使之能提供以下功能:
系统以菜单方式工作v
图书信息录入功能(图书信息用文件保存)--输入v
图书信息浏览功能--输出v
查询和排序功能:
(至少一种查询方式)--算法v
l按书名查询
l按作者名查询
图书信息的删除与修改(可选项)v
3:
学生信息管理系统设计(限最多3人完成)
学生信息包括:
学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。
试设计一学生信息管理系统,使之能提供以下功能:
系统以菜单方式工作
学生信息录入功能(学生信息用文件保存)---输入
学生信息浏览功能---输出
查询、排序功能---算法
按学号查询
按姓名查询
学生信息的删除与修改(可选项)
4:
学生选修课程系统设计(限最多3人完成)
假定有n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于60)自由选课。
试设计一选修课程系统,使之能提供以下功能:
系统以菜单方式工作v
课程信息录入功能(课程信息用文件保存)--输入v
课程信息浏览功能--输出v
查询功能:
(至少一种查询方式)--算法v
按学分查询l
按课程性质查询l
学生选修课程(可选项)v
5:
销售管理系统 (限最多3人完成)
某公司有四个销售员(编号:
1-4),负责销售五种产品(编号:
1-5)。
每个销售员都将当天出售的每种产品各写一张便条交上来。
每张便条包含内容:
1)销售员的代号
2)产品的代号
3)这种产品的当天的销售额
每位销售员每天可能上缴0-5张便条。
假设,收集到了上个月的所有便条,编写一个处理系统,读取上个月的销售情况(自己设定),进行如下处理。
1)计算上个月每个人每种产品的销售额。
2)按销售额对销售员进行排序,输出排序结果(销售员代号)
3)统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果(需输出产品的代号和销售额)
4)输出统计报表
销售统计报表能反映出:
销售员代号 产品代号 销售之和 每种产品之和 总和
6:
设计一个简单计算器(限最多3人完成)
算术计算器的实现
实现过程和步骤提示:
1.首先实现一个简单的算术器1。
功能说明:
程序首先显示计算器界面,并等待用户输入一个算术计算式(见图1所示)。
假如用户输入22+1
如果输入错误,显示inputerror!
。
图1
图2
计算器的界面程序已经提供:
(可访问
#include
#include
voidmain()
{
floata,b;
charc;
clrscr();
gotoxy(1,2);
printf("谀哪哪哪哪哪哪哪哪哪哪哪哪縗n");
printf("?
砛n");
printf("媚哪哪哪哪哪哪哪哪哪哪哪哪碶n");
printf("?
123+-砛n");
printf("?
砛n");
printf("?
456*/砛n");
printf("?
砛n");
printf("?
789=\x1b砛n");
printf("?
砛n");
printf("?
0.End砛n");
printf("滥哪哪哪哪哪哪哪哪哪哪哪哪賊n");
gotoxy(2,3);
//followingcodesgetuser'sinputandcompletethecalculation
//addyourcodesdownhere!
//addyourcodesuphere!
}
计算器1实现提示:
l读懂并掌握显示计算器界面的程序
l获取用户输入的算式只需利用”%f%c%f”调用scanf函数就可以。
其中%c用来获取运算符+,-,*,/,%f用来获取运算数。
l利用if语句或switch语句区分+,-,*,/的不同情况进行运算输出。
l在屏幕的指定位置输出利用gotoxy()和cprintf函数实现。
包含在conio.h头文件中。
2.在算术计算器1的基础上,实现算术计算器2。
功能说明:
算术计算器1一次只能执行一次计算,算术计算器2要求实现可以多次响应用户的计算请求。
当用户输入一个算式后,计算器显示计算结果,同时屏幕项部显示:
continue?
如果用户此时按Y键,则继续输入下一个算式,否则,程序终止。
计算器2实现提示:
l在“计算器1”的主要算法外层套一个循环语句
l在循环体内,显示完计算结果后调用getch函数,如果它的返回值不是’y’或’Y’,则跳出循环,程序终止。
3.在算术计算器2的基础上,实现算术计算器3。
功能说明:
算术计算器3不盲目等待用户输入,而是当用户没有输入时,计算器顶部显示一串闪烁的文本“Thisisasimplecalculator!
”,并且这串文本一会儿变成红色,一会儿变成绿色。
当用户按键时,这串文本不再闪烁。
如果用户按下End键,程序终止;否则程序接受用户输入的算式,并显示计算结果。
显示完计算结果后,程序继续闪烁言文本“Thisisasimplecalculator!
”,等待用户输入下一个算式或按End键退出。
计算器3实现提示:
l程序在调用scanf函数之前,必须先检测是否有键被按下。
l显示闪烁文本的算法如图3所示。
图3计算器3流程图
l检测是否有键按下,需要调用kbhit()库函数。
kbhit的原数原型:
intkbhit(void);
kbhit函数功能:
检测是否有键按下,如果有,则返回非0值(即真),否则返回0(即假)。
调用kbhit()函数的源程序必须包含conio.h文件。
l具有延时功能的函数是delay(unsignedmilliseconds)。
包含在dos.h头文件中。
Delay()函数的功能是:
将程序挂起milliseconds毫秒,即程序暂停或延时milliseconds毫秒。
l当kbhit函数返回非0时,还要检测是否是End键。
这需要调用bioskey库函数。
但参数必须是1,不能是0。
因为bioskey
(1)虽然返回用户所按键值,但没有接受键盘输入,不会影响其它函数(如scanf函数)接受有效输入。
lEND的键值定义为:
#defineEND0X4F00
lbioskey
(1)判断是否是END的用法:
if(bioskey
(1)==END)
{
相关操作
}
7:
学生成绩管理(限最多2人完成)
1.主要功能:
(1) 能按学期、按班级完成对学生成绩的录入、修改
(2) 能按班级统计学生的成绩,求学生的总分及平均分,并能根据学生的平均成绩进行排序
(3) 能查询学生成绩,不及格科目及学生名单
(4) 能按班级输出学生的成绩单
8:
通讯录管理(限最多3人完成)
设一个通信录由以下几项数据信息构成:
数据项类型
姓名字符串
地址字符串
邮政编码字符串
电话号码字符串
1.主要功能:
(1) 能建立、查询、修改和增删学生通讯录
(2) 能够按多种方式进行查询
2.要求:
界面友好,易于操作
9:
一元多项式简单的计算器(限最多1人完成)
1主要功能:
(1)输入并建立多项式;
(2)输出多项式;
(3)两个多项式相加,建立并输出和多项式;
(4)两个多项式相减,建立并输出差多项式。
(5)算法的时间复杂度、另外可以提出算法的改进方法
实现提示:
可选择带头结点的单向循环链表或单链表存储多项式,头结点可存放多项式的参数,如项数等。
2.要求:
一元多项式简单计算器的基本功能
10:
图书管理系统(限最多3人完成)
功能描述
1、新进图书基本信息的输入。
2. 图书基本信息的查询。
3. 对撤消图书信息的删除。
4. 为借书人办理注册。
5.办理借书手续(非注册会员不能借书)。
6.办理还书手续
信息描述:
有关该系统基本信息的描述,如:
图书名称、图书编号、单价、作者、存在状态、借书人姓名、性别、学号等
11:
用户设置密码(限最多2人完成)
做一个密码验证程序,密码验证只有三次机会。
要求有登录界面,用户输入密码时应以*代替输出。
用户登录成功后可以修改密码。
可以有多个用户登录。
初次登录的密码由管理员设置。
管理员可以添加或删除用户。
12:
成绩记录簿(限最多2人完成)
编制一个C语言成绩记录簿,每个学生信息包括:
学号、姓名、C语言成绩。
具体功能:
(1)创建信息链表并以磁盘文件保存;
(2)读取磁盘文件并显示输出所有学生的成绩;
(3)按学号或姓名查询成绩;
(4)添加成绩记录;
(5)修改指定姓名或学号的学生的成绩并可存盘;
(6)显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息。
13:
学生籍贯信息记录簿(限最多2人完成)
编制一个学生籍贯信息记录簿,每个学生信息包括:
学号、姓名、籍贯。
具体功能:
(1)创建信息链表并以磁盘文件保存;
(2)读取磁盘文件并显示输出所有学生的籍贯信息;
(3)按学号或姓名查询其籍贯;
(4)按籍贯查询并输出该籍贯的所有学生;
(5)能添加、删除和修改学生的籍贯信息;
14:
职工工作量统计系统(限最多1人完成)
编写有一个程序,该程序输入职工工号和完成的产品数量,程序允许同一职工有多次输入,由程序对其完成的产品数量实现累计。
程序按完成数量对他们排序,并确定他们的名次。
按完成的产品数量由多到少的顺序,输出名次、同一名次的职工人数及他们的工号(工号由小到大顺序输出)。
要求程序用有序链表存储数据信息。
15:
成绩管理系统(限最多3人完成)
现有学生成绩信息,内容如下
姓名学号语文数学英语
张明明01677882
李成友02789188
张辉灿03688256
王露04564577
陈东明05673847
….......…
实现学生信息管理,软件的入口界面应包括如下几个方面:
(一)功能要求:
(1)信息维护:
要求:
学生信息数据要以文件的形式保存,能实现学生信息数据的维护。
此模块包括子模块有:
增加学生信息、删除学生信息、修改学生信息
(2)信息查询:
要求:
查询时可实现按姓名查询、按学号查询
(3)成绩统计:
要求:
A输入任意的一个课程名(如数学)和一个分数段(如60--70),统计出在此分数段的学生情况。
(4)排序:
能对用户指定的任意课程名,按成绩升序或降序排列学生数据并显示排序结果(使用表格的形式显示排序后的输出结果)(使用多种方法排序者,加分)
(5)至少采用文本菜单界面(如果能采用图形菜单界面更好)
(3)学生可自动增加新功能模块(视情况可另外加分)
16:
通讯录管理系统(限最多3人完成)
用C设计出模拟手机通信录管理系统,实现对手机中的通信录进行管理。
(一)功能要求
(1)查看功能:
选择此功能时,列出下列三类选择。
A办公类B个人类C商务类,当选中某类时,显示出此类所有数据中的姓名和电话号码)
(2)增加功能:
能录入新数据(一个结点包括:
姓名、电话号码、分类(可选项有:
A办公类B个人类C商务类)、电子邮件)。
例如
杨春13589664454商务类chuny@
当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入;当通信录中超过15条信息时,存储空间已满,不能再录入新数据;录入的新数据能按递增的顺序自动进行条目编号。
(3)拔号功能:
能显示出通信录中所有人的姓名,当选中某个姓名时,屏幕上模拟打字机的效果依次显示出此人的电话号码中的各个数字,并伴随相应的拔号声音。
(4)修改功能:
选中某个人的姓名时,可对此人的相应数据进行修改
(5)删除功能:
选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。
(二)其它要求:
(1)至少采用文本菜单界面(如果能采用图形菜单界面更好)
(2)建议使用数组或链表等数据结构
(3)学生可自动增加新功能模块(视情况可另外加分)
17:
学籍管理系统(限最多3人完成)
使用下面的数据,用C设计一个简单的学籍管理系统,实现出最基本的功能。
学生基本信息文件(A.TXT)及其内容:
A.TXT文件不需要编程录入数据,可用文本编辑工具直接生成
学号姓名性别宿舍号码电话号码
01张成成男50187732111
02李成华女10187723112
03王成凤女10187723112
04张明明男50287734333
05陈东男50187732111
06李果男50287734333
07张园园女10287756122
……...…………..
学生成绩基本信息文件(B.TXT)及其内容:
学号课程编号课程名称学分平时成绩实验成绩卷面成绩综合成绩实得学分
01A01大学物理3667882
02B03高等数学478-190
01B03高等数学445-188
02C01VF3657666
…….……….....…
功能要求及说明:
(1)数据录入功能:
对B.TXT进行数据录入,只录入每个学生的学号、课程编号、课程名称、学分、平时成绩、实验成绩、卷面成绩共7个数据.综合成绩、学分由程序根据条件自动运算。
综合成绩的计算:
如果本课程的实验成绩为-1,则表示无实验,综合成绩=平时成绩*30%+卷面成绩*70%;如果实验成绩不为-1,表示本课程有实验,综合成绩=平时成绩*15%+实验成绩*.15%+卷面成绩*70%.
实得学分的计算:
采用等级学分制.
综合成绩在90-100之间,应得学分=学分*100%综合成绩在80-90之间,应得学分=学分*80%
综合成绩在70-80之间,应得学分=学分*75%综合成绩在60-70之间,应得学分=学分*60%
综合成绩在60以下,应得学分=学分*0%
(2)查询功能:
分为学生基本情况查询和成绩查询两种
A:
学生基本情况查询:
A1----输入一个学号或姓名(可实现选择),查出此生的基本信息并显示输出。
A2---输入一个宿舍号码,可查询出本室所有的学生的基本信息并显示输出。
B:
成绩查询:
B1:
输入一个学号时,查询出此生的所有课程情况,格式如下:
学号:
xx姓名:
xxxxx
课程编号:
xxx课程名称:
xxxxx综合成绩:
xxxx实得学分:
xx
课程编号:
xxx课程名称:
xxxxx综合成绩:
xxxx实得学分:
xx
课程编号:
xxx课程名称:
xxxxx综合成绩:
xxxx实得学分:
xx
………………………
共修:
xx科,实得总学分为:
xxx
(3)删除功能:
当在A.TXT中删除一个学生时,自动地在B.TXT中删除此人所有信息。
(4)排序功能:
能实现选择按综合成绩或实得学分升序或降序排序并显示数据。
(二)其它要求:
(1)至少采用文本菜单界面(如果能采用图形菜单界面更好)
(2)学生可自动增加新功能模块(视情况可另外加分)
18:
车票管理系统(限最多3人完成)
一车站每天有n个发车班次,每个班次都有一班次号(1、2、3…n),固定的发车时间,固定的路线(起始站、终点站),大致的行车时间,固定的额定载客量。
如
班次发车时间起点站终点站行车时间额定载量已定票人数
18:
00郫县广汉24530
26:
30郫县成都0.54040
37:
00郫县成都0.54020
410:
00郫县成都0.5402
…
(一)功能要求:
用c/c++设计一系统,能提供下列服务:
(1)录入班次信息(信息用文件保存),可不定时地增加班次数据
(2)浏览班次信息,可显示出所有班次当前状总(如果当前系统时间超过了某班次的发车时间,则显示“此班已发出”的提示信息)。
(3)查询路线:
可按班次号查询,可按终点站查询
(4)售票和退票功能
A:
当查询出已定票人数小于额定载量且当前系统时间小于发车时间时才能售票,自动更新已售票人数
B:
退票时,输入退票的班次,当本班车未发出时才能退票,自动更新已售票人数
(二)其它要求:
(1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读
(2)至少采用文本菜单界面(如果能采用图形菜单界面更好)
(3)学生可自动增加新功能模块(视情况可另外加分)
(4)写出实训报告,具体要求见相关说明文档
19:
单项选择题标准化考试系统(限最多3人完成)
(一)功能要求:
(1)用文件保存试题库。
(每个试题包括题干、4个备选答案、标准答案)
(2)试题录入:
可随时增加试题到试题库中
(3)试题抽取:
每次从试题库中可以随机抽出N道题(N由键盘输入)
(4)答题:
用户可实现输入自己的答案
(5)自动判卷:
系统可根据用户答案与标准答案的对比实现判卷并给出成绩。
(二)其它要求:
(1)源程序要有适当的注释,使程序容易阅读
(2)至少采用文本菜单界面(如果能采用图形菜单界面更好)
(3)学生可自动增加新功能模块(视情况可另外加分)
(4)写出实训报告,具体要求见相关说明文档
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 题目