1、 1 / 43 二一二二一三学年第二学期二一二二一三学年第二学期 信息科学与工程学院信息科学与工程学院 C+C+程序设计语言程序设计语言 课程设计报告课程设计报告 课程名称:课程名称:C+C+程序设计语言程序设计语言 班班 级:电气信息类级:电气信息类 班班 学学 号:号: 姓姓 名:名: 指导教师:指导教师: 二二 0 一三年零七月一三年零七月 目录:目录: 1. 课程设计目的课程设计目的 2. 系统描述系统描述(需求分析)(需求分析) 3. 功能模块结构功能模块结构(设计思路)(设计思路) 4. 主要模块的算法说明主要模块的算法说明 5. 程序运行结果程序运行结果(主要截图及说明)(主要截
2、图及说明) 6. 课程设计总结课程设计总结 7. 参考文献参考文献 8. 附录(程序源代码)附录(程序源代码) 3 / 43 一一.课程设计目的课程设计目的 1、使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻、使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻 辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法; 2、使学生掌握软件设计的基本内容和设计方法,并培养学生进行规、使学生掌握软件设计的基本内容和设计方法,并培养学生进行规 范化软件设计的能力范化软件设计的能力; 3、使学生掌握使用各种计算机资料和有关参考
3、资料,提高学生进行、使学生掌握使用各种计算机资料和有关参考资料,提高学生进行 程序设计的基本能力程序设计的基本能力。 二二. .系统描述(需求分析)系统描述(需求分析) 小型小型学生成绩管理系统学生成绩管理系统 1、需要处理的基础数据、需要处理的基础数据 学生基本信息:学生基本信息:如班级、学号、姓名、性别、年龄、宿舍号码、如班级、学号、姓名、性别、年龄、宿舍号码、 电话号码等。电话号码等。 学生选修课程的基本信息:学生选修课程的基本信息:课程编号、课程名称、考试成绩、平课程编号、课程名称、考试成绩、平 时成绩、综合成绩、学分、重修否等。时成绩、综合成绩、学分、重修否等。 2、系统的基本功能、
4、系统的基本功能 数据的录入: 如录入学生的基本信息,以及该学生选修课程的基数据的录入: 如录入学生的基本信息,以及该学生选修课程的基 本信息;本信息; 数据的修改:如修改指定学号、或者指定姓名的学生信息,或者数据的修改:如修改指定学号、或者指定姓名的学生信息,或者 修改其选修课程信息;修改其选修课程信息; 数据的插入:插入某个学生信息数据的插入:插入某个学生信息 数据的查询:如数据的查询:如按学号查询、按姓名查询等;按学号查询、按姓名查询等; 数据的删除: 如删除指定学号、 或者指定姓名的学生及其选修课数据的删除: 如删除指定学号、 或者指定姓名的学生及其选修课 程信息;程信息; 平均成绩的计
5、算:计算每个学生各门功课的平均成绩,并按平均平均成绩的计算:计算每个学生各门功课的平均成绩,并按平均 成绩从高到低的次序输出学生信息;成绩从高到低的次序输出学生信息; 列出不及格学生清单(学号、姓名、不及格的课程和成绩)。列出不及格学生清单(学号、姓名、不及格的课程和成绩)。 考虑用文件把数据保存起来(可选)。考虑用文件把数据保存起来(可选)。 分析如下:分析如下: (1)如上所示,该系统要求处理一些学生成绩的基本数据,包括两如上所示,该系统要求处理一些学生成绩的基本数据,包括两 个方面:学生身份信息和学生成绩信息。个方面:学生身份信息和学生成绩信息。 (2)该系统不仅要求能录入一些基本数据外
6、,还要能对这些数据进)该系统不仅要求能录入一些基本数据外,还要能对这些数据进 行处理,比如修改,删除,插入,查询等。另外,因为对数据库行处理,比如修改,删除,插入,查询等。另外,因为对数据库 了解不多,可以考虑用文件保存的形式将数据保存起来。了解不多,可以考虑用文件保存的形式将数据保存起来。 三三.功能模块分析(设计思路)功能模块分析(设计思路) 考虑到每个学生都是一个对象,而且他们都有一些共性:各考虑到每个学生都是一个对象,而且他们都有一些共性:各 种身份信息和成绩信息,于是可以定义一个类:里面包含各种成种身份信息和成绩信息,于是可以定义一个类:里面包含各种成 员信息(为了信息的隐蔽性,可以定义成私有数据)。而对这些员信息(为了信息的隐蔽性,可以定义成私有数据)。而对这些 数据进行处理的选项,可以用一些函数来实现,每一个函数对应数据进行处理的选项,可以用一些函数来实现,每一个函数对应 一个功能。在这里,