1、C+简单学生成绩管理系统C+课程设计C+学生成绩管理系统要求用C+语言编写学生成绩管理系统,要求能进行添加删除修改输入输出等的操作,并能使用面相对像原理对此系统进行实现。学生成绩管理系统分析:学生成绩管理系统分为8个模块,分别是:添加学生信息,输出学生成绩,查找学生成绩,修改学生成绩,删除学生成绩,学生成绩排序,保存数据到文件和读取文件中学生成绩的模块。学生成绩管理系统结构:各个子函数功能及其流程:1.首先定义一个学生类Class Student;并定义其各个私有变量和公有函数2.Student();构造函数,用于初始化学生类中的各个变量并记录3.Add();函数:用于添加学生信息的函数包括学
2、号姓名成绩等的内容4.Output();函数:用于输出学生信息,包括学号姓名各科及总分平均成绩5.Find();函数:用于查找学生各项信息。6.modify();函数:用于修改学生各项信息。7.delete();函数:用于删除学生信息。8。sort();函数:对学生各项信息进行排序操作。8.save()和load();函数:将学生信息保存到文件中,并在需要的时候调用该文件将其中的学生信息显示出来9.“=”“符号的重载:在各个函数处理数据过程中对这些的调用处理函数源代码:此函数源代码在VisualC+6。0环境下编译通过.具体如下:include”iostream.h include”conio
3、.h” #include”iomanip。h” #includestdio.h” #includestring.h include”stdlib.h include”fstream.h class student /定义学生类 private:/定义学生类的私有成员char name20; /名字char sex5; /性别int number; /学号int score3; /分数int total; /总分int average; /平均分 public: /公有成员student(); /学生构造函数,用于学生数据的初始化及保存学生数据void add(); /添加学生信息函数void
4、output(); /输出学生信息函数void find(); /查找学生数据函数void modify(); /修改学生信息函数void deleted(); /删除学生信息函数void sort(); /排序函数void save(); /保存学生信息并写入文件函数void load (); /打开写有学生信息的文件的函数student & operator=(student T); /重载“=”符号friend istream operator (istream scin, student s1); /重载“”符号friend ostream & operator (ostream sc
5、out, student s2); /重载“”符号; student stu100; int n=0;void student::add() /添加函数 char flag=Y; while(toupper(flag)=Y) cinstun; n+; coutflag; if(toupper(flag)!=Y) if(toupper(flag)=N) break; else coutflag; void student:output() /输出函数 if(n!=0) cout -n; cout number name sex math C+ English total averagen; co
6、ut - n; for(int t=0;tn;t+) coutstut; getch(); void student:find() /查找函数 int f3=0; char n120; student temp; coutn1; for(int j=0;jn;j+) if(strcmp(stuj.name,n1)=0) temp=stuj; f3=1; if(f3=0) cout对不起,没有你要查找的学生成绩”endl; else cout -n”; cout number name sex math C+ English total averagen; cout” - n; cout” te
7、mp。number” ”temp。name ”temp。sex” ”temp。score0 temp.score1 temp。score2” ”temp.total ”temp。averageendl; getch(); void student::modify() /修改函数 int f4=0; int t; char n250; coutn2; for(int j=0;jn;j+) if(strcmp(stuj.name,n2)=0) t=j; f4=1; if(f4=0) cout”对不起,没有你要修改的学生成绩”endl; else coutstut。number; cout ” 姓名
8、: ; cinstut.name; coutstut。score0; coutstut.score1; cout ” 英语成绩: ; cinstut。score2; stut.total=stut.score0+stut。score1+stut.score2; stut。average=stut.total/3; cout” 修改成功 !”endl; getch(); void student:deleted() /删除函数 char n320; bool f5=0; char c; do coutn3; for(int i=0;in;i+) if(strcmp(n3,stui.name)=0
9、) f5=1; n-; do stui=stui+1; i+; while(i=n); if(f5=0) cout您要求删除的对象本来就不存在!; cout要继续删除吗?(y/n)”endl; cinc; if(toupper(c)!=Y&toupper(c)!=N) cout输入指令错误!请重新输入Y或N!”c; while(toupper(c)=Y); getch(); void student::sort() /排序函数 int i,j,k; student s3; for( i=0;i(n-1);i+) k=i; for(j=i+1;jn;j+) if(stuj.averagestui
10、.average)k=j; if(k!=i) s3=stui; stui=stuk; stuk=s3; coutnn排序成功!nn; void student::save() /保存函数 char filename120;cout”请输入文件名: ”; cinfilename1; ofstream fout(filename1,ios::app); if(!fout)cout”文件不能打开!endl; else for(int i=0;in;i+) fout stui。name stui。sex stui。number stui。score0 stui.score1 stui。score2 s
11、tui.total stui。average ; cout”保存成功!”endl; fout.close(); getch(); void student:load() /读取函数 char filename220; coutstui.namestui.sexstui.number stui.score0stui。score1stui.score2stui.totalstui。average; cout”文件已读取成功!endl; fin。close(); getch(); student student::operator=(student & T) /重载= strcpy(name,T.n
12、ame); strcpy(sex,T。sex); number=T.number; for(int i=0;i3;i+)scorei=T。scorei; total=T。total; average=T.average; return ( * this ); ostream & operator (ostream & scout, student &s2) /重载 coutsetw(6)s2。numbersetw(10)s2.namesetw(8)s2。sexsetw(8)s2。score0 setw(8)s2.score1setw(10)s2.score2setw(10)s2.totalse
13、tw(8)s2.average couts1。sex; couts1。score0; couts1。score1; cout ” t英语成绩:”; scins1。score2; s1。total=s1.score0+s1。score1+s1。score2; s1.average=s1。total/3; return scin; student::student() /构造函数 strcpy(name, ”); strcpy(sex,” ); number=0; for(int i=0;i3;i+)scorei=0; total=0; average=0; void menu() /菜单函数 c
14、outnnn学生成绩管理系统主菜单 ”endl; coutnnn1.添加学生信息 ”endl; cout”2.输出学生信息 ”endl; cout”3。查找学生信息 endl; cout”4.修改学生信息 endl; cout5.删除学生信息 endl; cout”6。学生信息排序 ”endl; cout7。保存数据 endl; cout8。读出数据 endl; cout”9.退出系统 ”endl; coutnn请选择(19)并按回车键确认:”; int main() /主函数 int choose; student s; do menu(); cinchoose; switch(choose) case 1: s.add(); break; case 2: s。output(); break; case 3: s.find(); break; case 4: s。modify(); break; case 5: s.deleted(); break; case 6: s。sort(); break; case 7: s.save(); break; case 8: s.load(); break; default : break; while(choose!=0);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1