C++课程设计_学生学籍管理系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程名称:C++面向对象程序设计课程设计题目:大学生学籍管理系统

目录:

一、系统设计目标、意义

二、系统设计思路

三、系统功能介绍

四、输入输出的设计

(1)界面的设计

(2)数据输出设计

(3)系统运行结果

五、详细设计

(1)系统功能结构图

(2)U ML

六、附录

七、系统设计、开发过程中遇到的问题

八、心得体会

学生学籍管理系统

一、系统设计目标、意义

(一)系统实现的目标

1、课程设计的任务:

制作一个小型的学生学籍管理系统,要求制作一个菜单,实现数据的录入,数据的显示,数据查找,数据的删除,数据的保存,数据的统计,数据的修改,系统的退出。系统的设计要求用到C++面向对象的程序设计,要求用到类来实现,同时每一个功能用到一个函数。

2、(1)基本功能:

学生基本信息(编号,姓名,性别,籍贯,民族,生日,政治面貌,省份证,数学成绩,英语成绩,计算机成绩)

成绩统计(各科总成绩,各科平均成绩,各科的及格率)

(2)扩展功能:

学生数据的添加、修改、与删除

学生数据的读取与存储

3、系统特点:

系统要能够对相应的数据进行很好的测试,系统的统计对每一科的总成绩,平均成绩,及格律都进行了统计;系统数据的录入除可以手工录入外,还可以采用文件的录入;系统统计学生的基本信息

较全面,包括学号,姓名,民族,政治面貌,身份证号,生日,性别,数学、英语、计算机的成绩;程序中查找运用了两种查找方式即学号查找和姓名查找。

(二)系统设计的意义

通过设计此项程序,能够对学生的学籍进行统一的管理,对学生的学籍进行录入、修改、保存等功能进行处理,从而能够较快地对信息进行处理,系统数据的录入除可以手工录入外,还可以采用文件的录入;系统统计学生的基本信息较全面,程序中查找运用了两种查找方式即学号查找和姓名查找,方便查询。

二、系统设计思路

第一步:分析题目,建立类并派生出它的子类,画出类图。

第二步:画出流程,根据流程图编写程序清单

第三步:上机调试程序(使用单步调试,设置断点、分块调试的方法)。第四步:及时整理资料,撰写课程设计报告中有关这个题目的内容。

三、系统功能介绍

(一)程序对学生学籍的数据处理要求

①能够输入并浏览学生的基本信息;

②能够实现对学生信息的查询和修改;

③能够对成绩进行统计;

④能够对学生的信息进行保存;

(二)系统功能:

资料维护:系统维护包括对各学生信息和成绩的录入操作。

资料维护:对数据表中的信息进行浏览。

系统查询:可以对不同科目的总成绩、不及率、各科平均成绩相关信息。

四、输入输出的设计

1.界面的设计

①、界面设计

程序运行后会出现一个简捷的窗口,便于用户查询数据。

②、功能设计

通过主窗体调用其他窗体,具体实现可以参照系统分析相关内容。应用系统主控界面包括学生信息录入,查找等功能模块。

学生信息录入功能完成学生信息和成绩的输入。记录查询功能可

以对数据各分类的记录进行查询。

2.数据输出设计

主要运行界面:

统计界面:查找界面:

显示界面:录入界面:

保存界面:

修改界面:删除界面:

3、系统运行的结果:

(仅部分)

五、详细设计

1、系统功能结构图:

主程序

初始化程序

退

2、(1)类:student

数据成员:编号,姓名,性别,籍贯,民族,生日,政治面貌,省份证,数学成绩,英语成绩,计算机成绩

(2)类:school

成员函数:录入函数Input():输入编号到计算机的成绩;

统计函数count():统计各科的总成绩,计算平均成绩,统计各科的及格率;

查询函数found():按学号或姓名查找学生的记录;

修改函数mend():修改指定学号学生成绩记录;

删除函数del():删除指定学号学生记录;

输出函数show():输出班级所有学生成绩记录;

UML图:

六、附录:(主要代码)

#include

#include

#include

#include //操纵符定义在其中

class student

{

protected:

int number; char name[20];

char sex[6]; char place[20];

char nation[6]; char birth[20];

char party[10]; char id[20];

float score[3];

public:

student *next;

student(){ }

~student(){ }

char* getname(){ return name; }

int getnumber(){ return number;}

double getscore(int i) { return score[i];}

float getg(){ return (score[0]+score[1]+score[2]); }

void input()

{ int e=1;

cout<<"\t\t\t按提示输入:"<

cout<<"\t\t输入编号: "; cin>>number;

cout<<"\t\t输入姓名: "; cin>>name;

do

{cout<<"\t\t输入性别: ";

cin>>sex;

if(strcmp(sex,"男")==0 || strcmp(sex,"女")==0)

{ cout<<"\t\t输入籍贯: ";cin>>place; cout<<"\t\t输入民族: ";cin>>nation;

cout<<"\t\t输入生日: ";cin>>birth; cout<<"\t\t输入政治面貌: ";cin>>party;

cout<<"\t\t输入身份证号: ";cin>>id; cout<<"\t\t输入数学分数: ";cin>>score[0];

cout<<"\t\t输入英语分数: ";cin>>score[1];

cout<<"\t\t输入计算机分数: ";cin>>score[2];

e=0;}

else

{cout<<"\t\t\t无此类型性别!重新输入!"<

e=1; }

}while(e);

相关文档
最新文档