C语言课程设计任务书
一 C语言课程设计目的和要求1.目的:
1)复习、巩固C语言的基础知识,进一步加深对C语言的理解和掌握;
2)课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力;
3)培养学生在项目开发中团队合作精神、创新意识及能力。
2.要求:
1)、对系统进行功能模块分析、控制模块分析正确,符合课题要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理;
2)、系统设计要实用,编程简练,可用,功能全面
3)、说明书、流程图要清楚
4)、记录设计情况(备查,也为编写设计说明书作好准备);
5)、要求采用模块化程序设计方法,及锯齿型书写格式,要求上机调试通过和按设计报告格式。
6)、设计上交内容:设计报告一份(按格式书写);源程序盘一张(能编译成可执行文件并能正常运行,可一个班交一张光盘)。
二 C语言课程设计选题如下:
1、小学算术运算测试(math.c)
功能要求:
制作一个可供小学数学运算程序:10以内加减法,能根据输入题数出题,判断做题是否正确,最后计算分数。
界面要求:美观简洁
2、编写一万年历系统
要求: 模仿现实生活中的挂历.
当前页以系统当前日期的月份为准显示当前月的每一天(显示出日及对应的星期几).
当系统日期变到下一月时,系统自动翻页到下一月.
3、通讯录管理系统
主要功能:制作一个通讯录程序,该程序具有查找、添加、修改、删除功能。通讯录包括:姓名,电话,街道,城市,省,邮编等。
模块设计参考:
第一个模块——主函数main()的功能是:根据选单的选项调用各函数,并完成相应的功能。
第二个模块——Menu()的功能是:显示英文提示选单。
第三个模块——Quit()的功能是:退出选单。
第四个模块——Create()的功能是:创建新的通讯录。
第五个模块——Add()的功能是:在通讯录的末尾,写入新的信息,并返回选单。
第六个模块——Find()的功能是:查询某人的信息,如果找到了,则显示该人的信息,如果未找到,则提示通讯录中没有此人的信息,并返回选单。
第七个模块——Alter()的功能是:修改某人的信息,如果未找到要修改的人,则提示通讯录中没有此人的信息,并返回选单。
第八个模块——Delete()的功能是:删除某人的信息,如果未找到要删除的人,则提示通讯录中没有此人的信息,并返回选单。
第九个模块——List()的功能是:显示通讯录中的所有记录。
4、学生成绩管理系统
主要功能:
(1)能完成对学生成绩的录入、修改
(2)能统计学生的成绩,求学生的总分及平均分,并能根据学生的平均成绩进行排序
(3)能查询学生成绩,不及格科目及学生名单
(4)能输出学生的成绩单
5、设计一个简单计算器
要求: 能完成基本的加、减、乘、除计算,系统界面不做强制要求。
6、学生成绩管理系统
学生属性:学号,姓名,入学年月,有成绩的学期数,四门课的成绩等9个成员,在编程中要求当执行状态输入i为输入学生记录,输入D为删除,输入s为查询(以学号为查询条件),输入p为将整个学生记录输出,使用结构数组或结构指针编程
7、职工信息管理系统设计
职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。试设计一职工信息管理系统,使之能提供以下功能:
系统以菜单方式工作
职工信息录入功能(职工信息用文件保存)
职工信息浏览功能
查询和排序功能:(至少一种查询方式)
按工资查询
按学历查询等
职工信息删除、修改功能(任选项)
8、图书信息管理系统设计
图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:
系统以菜单方式工作
图书信息录入功能(图书信息用文件保存)
图书信息浏览功能
查询和排序功能:(至少一种查询方式)
按书名查询
按作者名查询
9、学生信息管理系统设计
学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。试设计一学生信息管理系统,使之能提供以下功能:
系统以菜单方式工作
学生信息录入功能(学生信息用文件保存)
学生信息浏览功能
查询、排序功能
按学号查询
按姓名查询
10、学生选修课程系统设计
假定有n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于60)自由选课。试设计一选修课程系统,使之能提供以下功能:
系统以菜单方式工作
课程信息录入功能(课程信息用文件保存)
课程信息浏览功能
查询功能:(至少一种查询方式)
按学分查询
按课程性质查询
11、算24游戏
主要功能:
(1)能罗列出四张牌用四则运算凑成24的游戏。
(2)凑不成给出提示。
12、销售管理系统(1-2人)
功能要求:
某公司有四个销售员(编号:1-4),负责销售五种产品(编号:1-5)。每个销售员都将当天出售的每种产品各写一张便条交上来。每张便条包含内容:
1)销售员的代号
2)产品的代号
3)这种产品的当天的销售额
每位销售员每天可能上缴0-5张便条。假设,收集到了上个月的所有便条,编写一个处理系统,读取上个月的销售情况(自己设定),进行如下处理。
1)计算上个月每个人每种产品的销售额。
2)按销售额对销售员进行排序,输出排序结果(销售员代号)
3)统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果(需输出产品的代号和销售额)
说 明:
按规定的模板封面输出,不准自定义封面格式
软件:需提供源程序,并能正常运行。
注:对于程序中未能实现的部分需要加以说明。对于程序中所参考的部分代码需要加以声明,并说明出处。
六、课程设计报告格式及要求
(一)、封面;
(二)、目录;
(三)、设计任务书;
(四)、本组课题及本人任务;
(五)、程序功能简介;
(六)、主体内容(简要说明总体情况,详细介绍本人任务部分):
1.设计分析;
2.程序结构(画流程图)
3.各模块的功能及程序说明;
4. 源程序;
5.操作方法(流程);
6.试验结果(包括输入数据和输出结果)
7.设计体会。
(七)、附录:附程序流程图(总体模块图、本人设计部分的程序N-S或ANSI流程图);主要过程列表(含简要说明);程序中主要变量、函数(指自定义函数及程序中用到的部分不常用系统函数)列表(含简要说明)。
2、课程设计正文格式:
1 题目与要求(左对齐,宋体粗四号)
1.1 问题提出(左对齐,宋体粗小四号)
详细叙述本人所要实现的题目中的问题(小四,宋体)
例如:
本人计划编写一个学生信息管理系统,主要用来管理学生基本信息及成绩信息。
1.2 本系统涉及的知识点
例如:
结构、数组、循环、函数、分支、指针(小四,宋体)
1.3 功能要求
叙述本人所要实现的题目功能(小四,宋体),
例如:
1、建立学生信息,每个学生的信息包括:学号、姓名、性别、班级、成绩;
2、求出每个学生的平均分;
3、排序:分别按平均分排序、按学号排序;
4、根据学号查询成绩;
5、输出:…..
2 功能设计(左对齐,宋体粗四号)
2.1 算法设计(左对齐,宋体粗小四号)
将题目分成若干模块或部分、各模块或部分的算法设计(小四,宋体),
例如:本系统需要实现的功能要求:
利用switch语句设计如图1所示的主菜单(图中的文字宋体5号):
请输入选项编号(1~6)
1—— 输入信息
2—— 求平均分
3—— 排 序
4—— 查 询
5—— 输 出
6—— 退 出
图1 学生信息管理系统主菜单
(所有的图统一编号,宋体5号,置于图下的中间,)
2、选择3后,调用排序函数,进入函数后利用switch语句实现一个如图2所示的菜单,该菜单中每个选项调用一个函数
图2 排序子菜单
3、根据所选菜单编写相应代码:
1)输入函数input:利用循环输入的方式,将有关信息存入结构数组,结构数组根据实际的人数,采用动态方式建立……
2)求平均分函数average:….
…….
图3 成绩管理系统模块图
2.2 部分模块流程图
流程图的画法参阅第二章。
3 程序代码设计(左对齐,宋体粗四号)
内容:分模块(函数)简述其功能;模块中使用的各变量的类型及作用,包括声明数据类型(如结构体);设计过程;并列出该模块(函数)的代码。(宋体小四号)。
例如:
输入模块(模块名宋体粗小四号,其余宋体小四号)
1)函数原形:void input(struct student stu[ ],int n)
2)功 能:利用for循环语句和scanf、gets、getchar函数完成对结构数组的输入,存放n个学生的信息(学号、姓名、性别、4门成绩)。
3)变量及类型:
int a[5][4] :整型形参数组,接收main函数传过来的二维数组的首地址。
int i , j :循环控制变量。
int n :整型形参变量,接收main()传过来的数组人数。
struct student stu[ ]:接收主函数传过来的数组首地址。
4)说明:执行完输入函数后,会在键盘缓冲区中保存回车键,后面再对字符型变量赋值时,会将缓冲区中的回车键当成数据存入变量中,所以要在某些输入语句后面加getchar()函数。(若不需说明部分可省略)
……
4 C程序设计总结(左对齐,宋体粗四号)
内容:
1. 程序调试情况;
2. 本人在程序设计中感想,如:收获、遇到的困难(因某知识点欠缺,编写的程序哪部分有错;因马虎或××方面欠考虑,运行结果不相符等)如何解决问题及困难等。(小四,宋体)
5 结束语(可省略)
内容:用简短的文字对在本次设计过程中给予帮助的人员表示感谢。
(小四,宋体)
参考文献(左对齐,宋体粗四号)
内容:列出课程设计中所参考的所有书目,格式如下:
[1] 谭浩强,C程序设计(第二版),北京:清华大学出版社,2001.1 (左对齐,宋体,五号)
[2] 陈朔鹰,C语言程序设计习题集,北京:人民邮电出版社,2003.6
附录:程序清单(左对齐,宋体粗四号)
内容:按规范格式书写的全部源代码
(Times New Roman字体,5号)