C++学生信息管理系统课程设计报告42596
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象的程序设计
课程设计报告
姓名:
学号:
班级:
院系
日期:
目录
1课程设计目的……………………………………………………
2项目要求与简介…………………………………………………
3设计题目…………………………………………………………
题目学生成绩管理系统……………………………………
4测试运行的结果………………………………………………….
5心得体会与进一步的改进………………………………………
6参考书目…………………………………………………………
7源代码…………………………………………………………
《《程序设计语言(C++)》》课程设计
一.设计目的
1.进一步掌握用C++进行类的定义和操作
2.进一步掌握类的继承和派生
3.掌握在Visual C++6进行编程的技术
4.综合利用上述知识,编写面向对象的简单程序
5.培养团结合作能力和自主学习的能力
二.项目要求与简介
1.要求系统具备一定的存储记忆功能
2.要求系统能够处理常见异常并作出反映
3.系统具备常用的学生信息处理功能
4.本系统还处于1.1版本,还会发布后续版本
三.设计题目
题目学生成绩管理系统
(一).系统的主要功能
1.增加学生
系统可以提示用户输入增加的学生个数,添入到student.dat
2.删除
首先由用户输入要删除的位置,然后系统调用删除函数
3.查找
系统提示用户输入要查找的学号,成绩,姓名然后系统再传递用户
选择的项目分别调用以上三个函数
4.修改
系统提示用户要修改的位置,然后传递给修改函数。接着系统出现提示
提示用户修改的项目,可以修改学号,姓名或者成绩
5.成绩信息
用户选择该功能以后,系统出现提示。总共有六项,求平均成绩,成绩排序低于平均成绩的学生信息,高于90分的学生信息,低于60分的学生信息或退出该功能
6.显示所有学生信息
调用此功能,系统读取文件中当前所有内容输出
7.当前学生总数
读取long.txt中保存的信息并输出
8.交换两个学生信息
调用函数交换两个学生的信息
9.插入学生信息
在指定位置新建一个学生信息,位置由用户输入
(二).系统总体框架
(三).系统数据结构定义class student{//这是数据节点public:
student(){};
student(student &c){
this->number=c.getnumber();
this->setname(c.getname());
this->setsex(c.getsex());
this->grade=c.getgrade();
}
void setname(char *name1){
strcpy(this->name,name1);
}
void setnumber(int num){
this->number=num;
}
void setgrade(double grade1){
this->grade=grade1;
}
void setsex(char *sex1){
strcpy(this->sex,sex1);
}
char *getname(){
return this->name;
}
double getgrade(){
return this->grade;
}
int getnumber(){
return this->number;
}
char *getsex(){
return this->sex;
}
private:
char name[20];
char sex[5];
double grade;
int number;
};
四.测试运行的结果
<1>测试新建学生信息功能
<2>测试查看学生总数功能
<3>测试插入学生信息功能
<4>测试显示所有学生信息功能
<5>测试学生成绩信息功能
<6>测试交换学生信息功能
<7>测试删除学生信息功能
<7>测试修改学生信息功能
<8>测试查找学生信息功能
五.心得体会与进一步改进通过此次VC++课程设计,我了解了Visual C++6的调试和找错基本方法。系统的设计基本实现了老师所要求的功能,同时还增添加了交换学生信息的新功能。同时在设计过程中,对于系统的功能还有许多不完善的地方,例如为了是对输入信息的限制,没有在系统中做限制用户可以随意输入,由此可能导致系统出错。另外对于删除没有实现按学号删除,因此还需要更多的设计来完善对于表达式的处理;设计一开始是以链表为基础的,后来进行不下去了。重新用了现在C ++中对文件处理的知识;界面风格只是使用默认的,没有创新,这个需要在以后的设计中加以改进。此次的课程设计让自己在学习新知识上有了更高的理解,有些只是只有在你想到要用时才会自己去学,同时自己在编程上的理解更深一层,逐步了解编程在实际中的运用,掌握了更多编程方法和思想,拓宽了知识面,为进一步的学习继续打牢根基。