




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学生成绩管理系统-蕲宥-C+程序设计源程序:-学生成绩管理系统#include#include#include #include /数组比较头文件#include /文件的输入输出#include int time=0;char name_20;class CPerson/-CPerson基类 成员:IDNo NameAddrTel public:char IDNo30;char Name30;char Addr30;char Tel30;class CStudent:public CPerson/-CStudent 类-继承自CPerson 成员:StudNo MathEnglishAverage public:char StudNo30;double Math;double English;double Average;class CClass/-CClass类 成员:CClassName CStudentprivate:char CClassName30;CStudent* stu50;public:CClass();CClass();void CreateClass();/void OutClassName();/输出班级名字void NewAStu();/1.创建学生信息void change();/3.修改学生信息void del();/4.删除学生信息void writein();/文件写入void writeout();/文件读出void writeino();/文件另存为void writeouto();/打开其他文件void find();/6.查询学生信息;void back()/-/刷频函数coutttt执行成功!endl;system(pause);/任意键继续system(cls);/清除屏幕void back_no()system(pause);/任意键继续system(cls);/清除屏幕void title()/-system(cls);cout;void CClass:writein()/-保存文件ofstream SaveFile(myfile.txt);SaveFileCClassNamettimeendl;for(int i=0;itime;i+)SaveFileIDNotNametAddrtTeltStudNotMathtEnglishtAverageendl;SaveFile.close();ofstream Save(name_);SaveCClassNamettimeendl;for(int j=0;jtime;j+)SaveIDNotNametAddrtTeltStudNotMathtEnglishtAverageendl;Save.close();void CClass:writeino()/-文件另存为char choice30;ofstream fop; ifstream fip; cout文件已默认保存了!t现在需要另存为?(Y/N)choice;while(strcmp(choice,Y)=0|strcmp(choice,y)=0)cout请输入文件名称:tname_; strcat(name_, .txt );fop.open(name_);fopCClassNamettimeendl;for(int i=0;itime;i+)fopIDNotNametAddrtTeltStudNotMathtEnglishtAverageendl;fip.close();cout另存为name_成功!endl;back_no();return;while(strcmp(choice,n)=0|strcmp(choice,N)=0)back_no();return;while(strcmp(choice,Y)!=0|strcmp(choice,y)!=0)cout输入错误!endl;back_no();return;void CClass:writeout()/-int i=0; char c30;FILE *fp;if(fp=fopen(myfile.txt,r)=NULL)coutcannt open the filen;exit(0);fscanf(fp,%s%d,c,&time);strcpy(CClassName,c);while(iIDNo,stui-Name,stui-Addr,&stui-Tel,stui-StudNo,&stui-Math,&stui-English,&stui-Average);i+; fclose(fp); /*关闭文件*/ cout恭喜你!成功读取班级信息!n; void CClass:writeouto()/-打开其他文件int i=0; char c30;FILE *fp;fstream _file;ofstream fop; ifstream fip; cout请输入文件名称:tname_; strcat(name_, .txt );/创建文件名ifstream fin(name_);_file.open(name_,ios:in);while(!_file)coutname_没有被创建n;cout请输入文件名称:tname_; if(fp=fopen(name_,r)=NULL)coutcannt open the filen;exit(0);fscanf(fp,%s%d,c,&time);strcpy(CClassName,c);while(iIDNo,stui-Name,stui-Addr,&stui-Tel,stui-StudNo,&stui-Math,&stui-English,&stui-Average);i+; fclose(fp); /*关闭文件*/ cout恭喜你!成功读取班级信息!n; CClass:CClass()/-for(int i=0;i50;i+)stui=new CStudent();CClass:CClass()/-for(int i=0;i50;i+)deletestui;void CClass:CreateClass()/-创建班级 char choice30; char *c;char cname30;cout-学生信息管理程序-endl;cout1、创建班级endl2、读取班级信息endl3、退出程序endl;coutchoice;for(int o=0;o100;o+) while(strcmp(choice,1)=0)system(cls);cout-学生信息管理程序-endl;coutc;strcpy(CClassName,c);return;while(strcmp(choice,2)=0)system(cls);title();coutn1、打开上次的文件endl2、打开其他文件endlcname;for(int k=0;k100;k+) while(strcmp(cname,1)=0)writeout();return;while(strcmp(cname,2)=0)writeouto();return;coutcname;while(strcmp(choice,0)=0)exit(0);coutchoice;void CClass:NewAStu()/-0.创建学生cout输入学生信息n;coutstutime-IDNo;/-检验身份证位数while(stutime-IDNo18!=0)coutstutime-IDNo; coutstutime-Name;coutstutime-Addr;coutstutime-Tel;coutstutime-StudNo;for(int o=0;oStudNo12!=0)/-检验学号位数coutstutime-StudNo;for(int i=0;iStudNo,stutime-StudNo)=0)coutstutime-StudNo;coutstutime-Math;while(stutime-MathMath100)coutstutime-Math;coutstutime-English;while(stutime-EnglishEnglish100)coutstutime-English; stutime-Average=(stutime-Math+stutime-English)/2;back();void CClass:OutClassName()/-2.打印班级名称int fenshu;char temp30;double temp_;for(int change=0;changetime;change+)fenshu=change;for(int j=change;jStudNo,stufenshu-StudNo)Addr);strcpy(stufenshu-Addr,stuchange-Addr);strcpy(stuchange-Addr,temp); /*地址*/strcpy(temp,stufenshu-StudNo);strcpy(stufenshu-StudNo,stuchange-StudNo);strcpy(stuchange-StudNo,temp); /*身份证*/strcpy(temp,stufenshu-Name);strcpy(stufenshu-Name,stuchange-Name);strcpy(stuchange-Name,temp); /*姓名*/strcpy(temp,stufenshu-Tel);strcpy(stufenshu-Tel,stuchange-Tel);strcpy(stuchange-Tel,temp); /*电话*/strcpy(temp,stufenshu-IDNo);strcpy(stufenshu-IDNo,stuchange-IDNo);strcpy(stuchange-IDNo,temp); /*学号*/temp_=stufenshu-Math;stufenshu-Math=stuchange-Math;stuchange-Math=temp_; /*数学*/temp_=stufenshu-English;stufenshu-English=stuchange-English;stuchange-English=temp_; /*英语*/temp_=stufenshu-Average;stufenshu-Average=stuchange-Average;stuchange-Average=temp_; /*平均分*/-coutn班级名称:CClassNamet人数:timeendlendl;cout 学号身份证号码 姓名 住址 电话数学英语平均分endl;for(int i=0;itime;i+)coutStudNo IDNo Name Addr TeltMathtEnglishtAverageendl;back_no();void CClass:change()/-3.修改学生的信息 char str30; int i,had=0;char *a;char x30; if(time!=0)coutstr;for(i=0;iStudNo,str)=0|strcmp(stui-Name,str)=0) had=1;coutt身份证号码:tIDNoendlt 姓名 :tNameendlt 住址 :tAddrendlt 电话 :tTelendlt 学号 :tStudNoendlt 数学成绩 :tMatht 英语成绩 :tEnglisht 平均分 :tAverageendlendl;cout1、修改地址endl;cout2、修改电话号码endl;cout3、修改数学成绩endl;cout4、修改英语成绩endl;cout0、返回endl;coutx;for(int k=0;k100;k+) while(strcmp(x,1)=0)couta;strcpy(stui-Addr,a);back();return;while(strcmp(x,2)=0)coutstui-Tel;back();return;while(strcmp(x,3)=0)coutstui-Math;while(stui-Math100|stui-Math0)coutstui-Math;stui-Average=(stui-Math+stui-English)/2;back();return;while(strcmp(x,4)=0)coutstui-English;while(stui-English100|stui-English0)coutstui-English;stui-Average=(stui-Math+stui-English)/2;back();return;coutx; if(had=0) cout对不起!没有查询到str的信息!endl; back_no(); void CClass:del()/-4.删除学生的信息 char str30; int i,had=0; if(time!=0)coutstr;for(i=0;iStudNo,str)=0) had=1;cout第i+1位学生:endl;coutt身份证号码:tIDNoendlt 姓名 :tNameendlt 住址 :tAddrendlt 电话 :tTelendlt 学号 :tStudNoendlt 数学成绩 :tMathendlt 英语成绩 :tEnglishendlt 平均分 :tAverageendlendl; for(int j=i;jIDNo,stuj+1-IDNo); strcpy(stuj-Name,stuj+1-Name); strcpy(stuj-Addr,stuj+1-Addr);strcpy(stuj-Tel,stuj+1-Tel);strcpy(stuj-StudNo,stuj+1-StudNo); stuj-Math=stuj+1-Math;stuj-English=stuj+1-English;stuj-Average=stuj+1-Average; back(); time=time-1; if(had=0) cout对不起!没有查询到str的信息!endl; back_no(); void CClass:find()/-6.查询学生的信息 char str30;coutstr;for(int i=0;iName,str)=0|strcmp(stui-IDNo,str)=0|strcmp(stui-StudNo,str)=0|strcmp(stui-Tel,str)=0) coutnt身份证号码:tIDNoendlt 姓名 :tNameendlt 住址 :tAddrendlt 电话 :tTelendlt 学号 :tStudNoendlt 数学成绩 :tMatht 英语成绩 :tEnglisht 平均分 :tAverageendlendl;back_no();return;cout对不起!没有查询到str的信息!endl;back_no();void main()/-main 主函数 system(ver);CClass ClassRoom;char selection30;ClassRoom.CreateClass();system(cls);for(int o=0;o10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人生小满胜万全 教学设计-2023-2024学年高中下学期心理健康主题班会
- 专利实施许可合同常用范文6篇
- 2025合同管理的关键注意事项
- 2025年个人私人车位租赁合同
- 第六课 温故知新说课稿-2025-2026学年高中心理健康北师大版2015高中二年级全一册-北师大版2015
- 大同事业单位笔试真题2025
- 2025混凝土购销合同
- 2025企业停薪留职员工合同
- 人教部编版道德与法治九年级上册5.2凝聚价值追求说课稿
- 油墨厂咬底控制制度
- 国际伤口治疗师汇报
- 《电工基础(第2版)》中职全套教学课件
- 河道清淤与水生态恢复方案
- 2024-2025大学英语考试六级汉译英中英对照
- 铂类化疗药物配置
- 2024-2025学年广东省深圳实验学校高中园高一(上)第一次段考数学试卷(含答案)
- 2024-2025学年天津市和平区双菱中学七年级(上)第一次月考数学试卷
- ISO9001-2015质量管理体系内审培训课件
- 《无线电失效程序》课件
- 新生儿注射用药并发症防治及管理课件
- 泸州市专业技术人员年度考核登记表
评论
0/150
提交评论