C++课程设计报告(学生成绩管理系统)(2)

2019-04-15 19:13

输入2,运行结果如下:

输入6,排序,显示选择界面,用户可根据需求选择科目和升降序,这里我是按语文成绩降序排序。

6

输入7,成绩统计,用户自行输入要统计的科目和分数段进行统计。这里我统计的是英语成绩在60—90的学生。

4、源程序代码

#include #include #include #include #include #include using namespace std ;

#define HEADER1 \ -----------------------------学生成绩----------------------------\\n\

#define HEADER2 \姓名 | 学号 | 数学 | 语文 | 英语 | 总分 |\\n\#define HEADER3 \|----------|----------|----------|----------|----------|----------|\\n\

class Student //定义学生类 {

public:

char name[20] ; char id[20] ; int math ; int chinese ;

7

int english ; int sum ;

Student *next ; void input() ;

void ReadFile(istream & in) ; void show() ; } ;

void Student::input() //输入学生信息函数 {

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

cout<<\学号:\ cin>>id ;

cout<<\数学成绩:\ cin>>math ;

cout<<\语文成绩:\ cin>>chinese ;

cout<<\英语成绩:\ cin>>english ;

sum = math + chinese + english ; }

void Student::ReadFile(istream & in) //读取文件 {

in>>name>>id>>math>>chinese>>english>>sum ; }

void Student::show() //输出学生信息 {

cout<<\ |\ |\|\ |\|\ cout<<\

|----------|----------|----------|----------|----------|----------|\\n\}

class StudentMassage //定义学生信息类,包含各项处理功能 {

public:

StudentMassage() ; ~StudentMassage() ;

8

void ShowMenu() ; void Display() ; void AddItem() ; void Find() ; void save() ;

void ModifyItem() ; void RemoveItem() ;

void Swap(Student *p1 , Student *p2) ; void Sort() ; int ListCount() ; int Count() ; private:

Student *Head , *End ; ifstream in ; ofstream out ;

Student *FindItem(char *name) ; Student *FindId(char *id) ; } ;

Student *StudentMassage::FindItem(char *name) {

Student *p ;

for(p = Head ; p->next != End ; p = p->next) if(!strcmp(p->next->name , name)) return p ; return NULL ; }

Student *StudentMassage::FindId(char *id) {

Student *p ;

for(p = Head ; p->next != End ; p = p->next) if(!strcmp(p->next->id , id)) return p ; return NULL ; }

StudentMassage::StudentMassage() //构造函数 {

Head = new Student ;

Head->next = new Student ; End = Head->next ; in.open(\ if(!in)

9

cout<<\这是一个新系统,无学生信息,请先输入。\ else {

while(!in.eof()) {

End->ReadFile(in) ; if(End->name[0]=='\\0') break ;

End->next = new Student ; End = End->next ; }

in.close() ;

cout<<\读取学生信息成功!\ } }

StudentMassage::~StudentMassage() //析构函数 {

Student *temp ; save() ;

for(temp ; Head->next != End ; ) {

temp = Head->next ;

Head -> next = Head ->next->next ; delete temp ; }

delete Head , End ; }

void StudentMassage::ShowMenu() //显示菜单 {

cout<<\主菜单\

cout<<\; cout<<\、增加学生信息 2、删除学生信息\; cout<<\、修改学生信息 4、显示学生信息\; cout<<\、信息查询 6、排序\ cout<<\、成绩统计 0、安全退出\ cout<<\

cout<<\请选择:\}

void StudentMassage::Display() //显示学生信息 {

10


C++课程设计报告(学生成绩管理系统)(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:阴宅24山水口吉凶断

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: