




免费预览已结束,剩余8页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1. 程序执行后的部分效果1.1项目主菜单效果图1.2初始化信息,第一次对信息的录入1.3添加学生信息1.4删除某学生信息1.5修改某学生信息1.6查询某学生信息1.7显示全部学生信息源代码:/*把StudentData.cpp(源代码) 和 student.txt(数据存放处)放在同一个文件夹下*/#include #include #include #include #include using namespace std;/最多提供50个学生的数据,可根据需要进行更改const int MAX = 50;int count = 0;/用来统计学生人数class Student public:void Set();/初始化信息,第一次对信息的录入void Add();/添加学生信息/从磁盘读取数据以便 进行 数据的操作,方便再重写进磁盘friend void Read(string no,string name,string sex,string special,string clas);int Judge(string num);/判断 num 是否在学生信息数据库中(注意它有一个参数,并且有一个int型的返回值)void Delete();/删除某学生信息void Change();/修改某学生信息 void Search();/查询某学生信息void Display();/显示全部学生信息private:string m_no;string m_name;string m_sex;/m_ 指的是成员变量(member)string m_special;string m_clas;void Student:Set()string no, name, sex, special, clas;ofstream outfile(student.txt); /打开文件if(!outfile)cerr open errorendl;exit(1);/退出程序cout当学号输入为 0 时,停止输入!endl;cout请依次输入学生的学号,姓名,性别,专业,班级:endl;for(int i=0; iMAX; i+)cout第count+1个学生:no;if(no = 0) break;/当输入的学号是 0 时,停止录入cinnamesexspecialclas;count+;m_no = no;outfilem_not;/每录入一个学号,写进磁盘保存,以下同理m_name = name;outfilem_namet;m_sex = sex;outfilem_sext;m_special = special;outfilem_specialt;m_clas = clas;outfilem_clasendl;outfile.close();/添加学生信息void Student:Add()string no, name, sex, special, clas;/以追加的方式录入信息,直接将信息追加到以前文件的末尾ofstream outfile(student.txt,ios:app);if(!outfile) cerr open errorendl; exit(1); count+;/添加一个学生信息,当然 count 要 +1cout请依次输入要添加的学生学号,姓名,性别,专业,班级:nonamesexspecialclas;m_no = no;outfilem_not;m_name = name;outfilem_namet;m_sex = sex;outfilem_sext;m_special = special;outfilem_specialt;m_clas = clas;outfilem_clasendl;outfile.close();cout已添加成功!endl;/从磁盘读取数据void Read(string no,string name,string sex,string special,string clas)ifstream infile(student.txt,ios:in);if(!infile)cerr open errorendl;exit(1);for(int i=0; inoinameisexispecialiclasi;infile.close();/判断某学号的学生是否在数据库中int Student:Judge(string num)string noMAX, nameMAX, sexMAX, specialMAX, clasMAX;Read(no, name, sex, special, clas);/调用Read()函数,获取数据,以便等下进行相关数据的判断for(int i=0; icount; i+)if(num = noi)return i;/如果存在,返回其下标break;return -1;/否则,返回-1/删除某学生信息void Student:Delete()string num, noMAX, nameMAX, sexMAX, specialMAX, clasMAX;Read(no, name, sex, special, clas);/读取学生所有数据,coutnum;int k = Judge(num);/定义一个k来接收Judge()的返回值,等下用来判断该num是否存在if(k != -1)/如果k不等于-1, 表示要删除的学生存在ofstream outfile(student.txt);if(!outfile)cerr open errorendl; exit(1); for(int i=0; icount; i+)if(i != k)/把下标不等于K(即除了要删的学生外)其余的数据重新写入磁盘保存outfilenoit;outfilenameit;outfilesexit;outfilespecialit;outfileclasiendl;outfile.close();count-;/删除一个学生,人数 -1cout删除成功!endl;elsecout该数据库没有此学生!endl;void Student:Change()string num, noMAX, nameMAX, sexMAX, specialMAX, clasMAX;coutnum;int k = Judge(num);if(k != -1)Read(no, name, sex, special, clas);/读取学生所有数据,cout请依次输入修改后的学生学号,姓名,性别,专业,班级:noknameksexkspecialkclask;/把下标是k的学生进行修改ofstream outfile(student.txt,ios:out);if(!outfile) cerr open errorendl; exit(1); for(int i=0; icount; i+)/改完后,回写进磁盘保存outfilenoit;outfilenameit;outfilesexit;outfilespecialit;outfileclasiendl;outfile.close();cout修改成功!endl;elsecout该数据库没有此学生!endl;void Student:Search()string num, noMAX, nameMAX, sexMAX, specialMAX, clasMAX;Read(no, name, sex, special, clas);coutnum;int k = Judge(num);if(k != -1)/找到该学生就打印出其信息cout学号t姓名t性别t专业t班级endl;coutnokt;coutnamekt;coutsexkt;coutspecialkt;coutclaskendl;elsecout该数据库没有此学生!endl;/显示学生的所有信息void Student:Display()string noMAX, nameMAX, sexMAX, specialMAX, clasMAX;Read(no, name, sex, special, clas);/先读取cout学号t姓名t性别t专业t班级endl;for(int i=0; icount; i+)/后打印coutnoit;coutnameit;coutsexit;coutspecialit;coutclasiendl;int main()int choice = -1;Student s;while(choice != 0)/除非你选择退出,否则一直循环coutnttt-学生信息管理系统-nn;coutttt| 1.录入学生信息 |n;coutttt| 2.添加一个信息 |n;coutttt| 3.删除一个信息 |n;coutttt| 4.修改学生信息 |n;coutttt| 5.查询学生信息 |n;coutttt| 6.显示学生信息 |n;coutttt| 0.退出 系统 |n;coutchoice;switch(choi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025贵州民族大学招聘程序招聘博士配偶工作考前自测高频考点模拟试题及完整答案详解一套
- 2025年中国户外太阳能聚光灯行业市场分析及投资价值评估前景预测报告
- 2025河南郑州市新郑市面向社会聘任政务服务社会监督员、政务服务体验员10人考前自测高频考点模拟试题附答案详解(模拟题)
- 外协员工入职安全培训课件
- 2025广东广州医科大学附属医院招聘163人(第一次编制)考前自测高频考点模拟试题有完整答案详解
- 2025年陕西大秦电能集团有限公司检修分公司招聘(1人)模拟试卷及答案详解(各地真题)
- 2025福建省康辉国际旅行社股份有限公司招聘5人考前自测高频考点模拟试题带答案详解
- 2025年文化和旅游部直属事业单位招聘应届生(100人)模拟试卷完整参考答案详解
- 2025和田地区教师招聘(2000人)考前自测高频考点模拟试题及答案详解参考
- 2025广西来宾市投资促进局公开招聘1人考前自测高频考点模拟试题附答案详解(考试直接用)
- 2025年及未来5年中国电子天平市场前景预测及行业投资潜力预测报告
- 2025年国网江苏省电力有限公司校园招聘450人(提前批)笔试参考题库附带答案详解
- 美甲老师教学员课件
- 2025江苏南京栖霞区发改委编外工作人员招聘1人备考考试题库附答案解析
- DB11∕T 1810-2020 装配式抗震支吊架施工质量验收规范
- 2025-2026学年统编版(2024)七年级道德与法治第一学期第一单元 少年有梦 单元练习卷 (含答案)
- 颈肩腰腿痛门诊诊疗课件
- 做有梦想的少年+课件-2025-2026学年统编版道德与法治七年级上册
- 财务内账表格大全-出纳实 用模板
- 糖尿病护理操作规范手册(2023修订)
- 产后腹直肌分离的诊断与治疗
评论
0/150
提交评论