C++教师信息管理系统方案文档格式.docx

上传人:b****6 文档编号:16934552 上传时间:2022-11-27 格式:DOCX 页数:22 大小:137.35KB
下载 相关 举报
C++教师信息管理系统方案文档格式.docx_第1页
第1页 / 共22页
C++教师信息管理系统方案文档格式.docx_第2页
第2页 / 共22页
C++教师信息管理系统方案文档格式.docx_第3页
第3页 / 共22页
C++教师信息管理系统方案文档格式.docx_第4页
第4页 / 共22页
C++教师信息管理系统方案文档格式.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

C++教师信息管理系统方案文档格式.docx

《C++教师信息管理系统方案文档格式.docx》由会员分享,可在线阅读,更多相关《C++教师信息管理系统方案文档格式.docx(22页珍藏版)》请在冰豆网上搜索。

C++教师信息管理系统方案文档格式.docx

voidPrint()

(3)按职工号或教学效果综合评分排序并显示

intSortMenu()

voidSortMenuControl()

voidInsertByTeano(CNode*newp)

voidSortByTeano()

voidInsertByScore(CNode*newp)

voidSortByScore()

(4)按姓名或课程查找教师记录并显示

intSearchMenu()

voidSearchMenuControl()

voidSearchByName()

voidSearchByCourse()

四、程序源代码

#include"

stdafx.h"

#include<

iostream>

fstream>

vector>

algorithm>

cstring>

string>

usingnamespacestd;

classCPerson

{

private:

stringname;

intage;

charsex;

public:

CPerson()

{}

CPerson(stringname,intage=0,charsex='

M'

{

this->

name=name;

age=age;

sex=sex;

}

voidSetAge(intage=0)

voidSetNameAndSex(stringname,charsex)

voidShowInfo()

cout<

<

name<

"

\t"

age<

(sex=='

?

男"

:

女"

)<

endl;

stringGetName()

returnname;

intGetAge()

returnage;

charGetSex()

returnsex;

};

classCTeacher:

publicCPerson

stringtitle;

//职称

stringteano;

//职工号

vector<

course;

//教授课程

floatscore;

//教学效果综合评分

CTeacher()

CTeacher(stringname,intage=0,charsex='

):

CPerson(name,age,sex)

voidSetData(stringtitle,stringteano)

title=title;

teano=teano;

voidSetCourse(stringc1,stringc2,stringc3)

course.push_back(c1);

course.push_back(c2);

course.push_back(c3);

voidSetScore(floatscore)

score=score;

teano<

GetName()<

GetAge()<

(GetSex()=='

title<

course[0]<

course[1]<

course[2]<

score<

voidoperator=(CTeacher&

one)

CPerson(one.GetName(),one.GetAge(),one.GetSex());

title=one.title;

teano=one.teano;

course[0]=one.course[0];

course[1]=one.course[1];

course[2]=one.course[2];

score=one.score;

GetCourse()

returncourse;

stringGetTitle()

returntitle;

stringGetTeano()

returnteano;

floatGetScore()

returnscore;

classCNode

friendclassCList;

CTeacherdata;

CNode*next;

classCList

CNode*head;

CNode*tail;

CNode*p;

CNode*pre;

intnum;

//当前节点数

intMainMenu()

1.显示当前记录"

2.添加记录"

3.排序"

4.查找"

5.创建新纪录"

0.退出"

intchoice;

cin>

>

choice;

returnchoice;

voidMainMenuControl()

ReadData();

while

(1)

{

intchoice=MainMenu();

if(choice==0)break;

switch(choice)

{

case1:

Print();

break;

case2:

Append();

break;

case3:

SortMenuControl();

break;

case4:

SearchMenuControl();

case5:

NewList();

}

}

是否保存?

(Y/N):

;

charc;

c;

if(c=='

y'

)Save();

voidReadData()

head=tail=newCNode;

head->

next=NULL;

num=0;

charfname[80];

请输入要读取的文件:

fname;

ifstreamfile(fname);

if(!

file)

cout<

出现未知错误导致无法打开!

exit

(1);

stringname,title,teano,course[3];

intage;

charsex;

floatscore;

while(file.peek()!

=EOF)

file>

teano>

name>

age>

sex>

title>

course[0]>

course[1]>

course[2]>

score;

p=newCNode;

p->

data.SetNameAndSex(name,sex);

data.SetAge(age);

data.SetData(title,teano);

data.SetCourse(course[0],course[1],course[2]);

data.SetScore(score);

tail->

next=p;

tail=p;

num++;

tail->

voidPrint()

for(p=head->

next;

p!

=NULL;

p=p->

next)

data.ShowInfo();

voidAppend()

请输入:

姓名:

stringname;

cin>

name;

年龄:

intage;

age;

性别(F/M):

charsex;

sex;

职称:

stringtitle;

title;

职工号:

stringteano;

teano;

教授课程:

stringcourse[3];

course[2];

教学效果综合评分:

floatscore;

next=tail->

charc;

是否继续添加?

cin.get();

if(c!

='

)break;

Print();

intSortMenu()

1.按职工号排序"

2.按教学效果综合评分排序"

voidSortMenuControl()

intchoice=SortMenu();

SortByTeano();

SortByScore();

Print();

voidInsertByTeano(CNode*newp)

for(pre=head,p=head->

pre=p,p=p->

if(newp->

data.GetTeano()<

p->

data.GetTeano())break;

newp->

pre->

next=newp;

voidSortByTeano()

p=head->

CNode*nextp;

while(p!

=NULL)

nextp=p->

InsertByTeano(p);

p=nextp;

voidInsertByScore(CNode*newp)

data.GetScore()<

data.GetScore())break;

voidSortByScore()

InsertByScore(p);

intSearchMenu()

1.按姓名查找"

2.按课程查找"

voidSearchMenuControl()

intchoice=SearchMenu();

SearchByName();

break;

SearchByCourse();

voidSearchByName()

intn=0;

请输入姓名:

stringname;

if(p->

data.GetName()==name)

p->

n++;

if(n==0)cout<

没有相关记录"

voidSearchByCourse()

请输入查找课程:

stringc;

vector<

course=p->

data.GetCourse();

for(inti=0;

i<

3;

i++)

if(c==course[i])

{

p->

n++;

break;

}

voidNewList()

Destory();

是否继续输入?

voidSave()

保存到:

ofstreamfile(fname);

file<

p->

data.GetTeano()<

<

data.GetName()<

data.GetAge()<

data.GetSex()<

data.GetTitle()<

data.GetScore()<

file.close();

voidDestory()

p=head->

head->

next=p->

deletep;

deletehead;

head=NULL;

tail=NULL;

pre=NULL;

~CList()

pre=NULL

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 化学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1