1 课程设计目标
使学生综合使用所学过的C语言程序设计知识,掌握结构化程序设计的基本思路和方法,利用所学的基本知识和技能,发挥自学能力和查找资料的能力,解决稍微复杂的结构化程序设计问题,加深对所学知识的理解与掌握,增强学生利用自己所学知识解决实际问题的能力,为以后的程序开发打下基础。
课程设计的目的和要求:
1.使学生巩固和加强《C语言程序设计》课程的理论知识。
2.使学生掌握C语言的基本概念、语法、语义和数据类型的使用特点。
3.使学生掌握C语言程序设计的方法及编程技巧,能正确使用C语言编写程序。
4.进一步理解和运用结构化程设计的思想和方法;学会利用流程图表示算法。
5.使学生掌握调试程序的基本方法及上机操作方法。
6.掌握书写程设计开发文档的能力,使学生学会撰写课程设计总结报告。课程设计的思想和方法还可以作为学生做毕业论文时的参考资料。
7.通过查阅手册和文献资料,培养学生独立分析问题和解决问题的能力。为学生做毕业设计打好基础。
8.初步掌握开发一个小型实用系统的基本方法:结合实际应用的要求,使课程设计既覆盖知识点,又接近工程实际需要。通过激发学习兴趣,调动学生主动学习的积极性,并引导他们根据实际编程要求,训练自己实际分析问题的能力及编程能力,并养成良好的编程习惯。
9.培养学生的创新能力和创新思维。学生可以根据指导书和相关文献上的参考算法,自己设计出相应的应用程序。
10.培养学生良好的程序设计风格。在实际编程中,为了提高编程质量,对空行、空格和注释均有要求。学生在课程设计书写代码时,应该严格按要求处理,以便建立良好的程序设计风格。
2 课程设计内容
2.1设计环境
1、硬件:PC机。
2、 软件:操作系统为Win7或Windows xp,设计语言为Visual C++6.0或Turbo C2.0。
2.2基本要求
1.要求有欢迎界面、菜单、数据使用数组、结构体、链表等均可,键盘操作或鼠标操作均可;可以加以其他功能或修饰,使程序更加完善、合理;
2.模块化程序设计:要求在设计的过程中,按功能定义函数或书写多个文件,进行模块化设计,各个功能模块用函数的形式来实现;
3.学生所选课题必须上机通过,并获得满意的结果;
4.设计上交内容:设计报告一份(按附件1的格式书写,包括电子文档和打印稿);源程序文件;
5.画流程图;
6.源程序书写风格:缩进式书写格式。
2.3设计过程
1.根据问题描述,设计数据存储方式;
2.分析系统功能,划分功能模块,确定各模块函数名称;
3.主程序算法设计和各模块算法设计;
4.编程实现;
5.调试和测试;
6.完成设计文档和课程设计说明书。
2.4、课程设计报告格式及要求
一、封面(见附件1);
二、目录;
三、需求分析;
描述问题。简述课题要解决的问题是什么,有什么要求和限制条件。
四、总体设计(程序设计总流程图及各模块划分,要求画出功能树);
五、详细设计(各模块功能说明,如函数功能、入口及出口参数说明,函数调用关系描述等);
六、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施;
七、测试结果,用几组测试数据进行测试算法设计的正确性,要包括测试数据和运行结果。
八、设计总结
九、参考文献
十、附录。
源程序清单和结果:源程序要加注释。
2.5、设计题目
学生信息管理系统
1、建立可处理20个同学和5门以上课程数据的学生基本信息和学生成绩信息的管理系统,学生基本信息包括学号、姓名、年龄、性别、出生年月、地址、电话、E-mail等;学生成绩信息包括学号、课程名称、课程成绩。
编程实现以下功能:
(1)录入学生基本信息、学生成绩信息。
(2)屏幕显示学生基本信息、学生成绩信息。
(3)按学号对学生基本信息、学生成绩信息排序。
(4)学生基本信息和学生成绩信息分别保存到两个不同的文件中。
(5)根据学号查询学生基本信息、学生成绩信息、计算该学生平均成绩。
(6)按学号顺序插入某个学生的基本信息和某门课程的成绩。
(7)删除指定学号的学生的基本信息和该学生的所有课程成绩。
2、要求如下:
(1)分别用结构数组保存学生基本信息和学生成绩信息。
(2)各项功能分别用不同函数实现,函数参数分别用数组或指针形式(两种形式都要有,部分函数用数组,部分函数用指针)。
3、定义函数功能如下:
(1)输入基本信息。
(2)显示学生基本信息。
(3)显示学生成绩信息。
(4)学生基本信息按学号排序。
(5)学生成绩按学号排序。
(6)保存学生信息到文件。
(7)保存成绩信息到文件。
(8)按学号查询学生基本信息和各门课程成绩并计算平均成绩。
(9)按学号插入学生基本信息和某门课程成绩。
(10)按学号删除学生基本信息和该生全部课程成绩。