1、面向对象程序设计大作业-学生信息管理系统学 院 名 称 专业班级 学生姓名 _学 号 指 导 教 师 _完成时间: 年 月 日学生信息管理系统1. 编程目标 模拟日常生活中所用信息管理系统,自行设计一个简单学生信息管理系统,要求能实现简单增加,删除,查找学生信息功效和能显示学生基础信息(包含姓名,学号,性别,家庭住址等),在窗口中显示运行结果。2. 系统介绍程序正常运行后,屏幕上显示一个文字菜单(依据序号选定对应操作项目),当用户选定操作项目所对应序号时,依据应用程序提醒信息,从键盘上输入对应数据。应用程序正常运行后,要在屏幕上显示一个文字菜单;要求用户输入数据时,要给出清楚、明确提醒信息。3
2、. 编程思绪为各项操作功效设计一个菜单,应用程序运行后,先显示这个菜单,然后用户经过菜单项选择期望进行操作项目。4. 总体设计为各项操作功效设计一个菜单,应用程序运行后,先显示这个菜单,然后用户经过菜单项选择期望进行操作项目。5. 关键技术说明将学生信息定义为一个类,采取多文件保留不一样信息数据。6. 源代码#include#include#includestatic int N;using namespace std;void add()int num; string name,politic,address; char sex; ofstream outfile(student1.txt,
3、ios:out); if(!outfile)cerropen file error!;exit(1); while(1) cout 请输入学生信息:nnnendl; cout 请输入学号:nnum; if(num=0)break; cout n 请输入姓名:nname; cout n 请输入性别:nsex; cout n 请输入政治面貌:npolitic; cout n 请输入家庭住址:naddress; coutn; outfilenum name sex politic addressendl; N+; outfile.close();void change() int num200; s
4、tring name200,politic200,address200; char sex200; int n; string nam,poli,addr; char s; ifstream infile(student1.txt,ios:in); if(!infile)cerropen file error!;exit(1); for(int i=0;inuminameisexipoliticiaddressi; infile.close(); ofstream outfile(student1.txt,ios:out); if(!outfile)cerropen file error!;e
5、xit(1); while(1) cout !注意输入学号为0是停止输入!nendl; cout 请输入你要修改学生学号:nn;coutn; if(n=0)break; coutn 请输入修改后姓名:nnam;coutn; cout 请输入修改后性别:ns;coutn; cout 请输入修改后政治面貌:npoli;coutn; cout 请输入修改后家庭住址:naddr;coutn; for(int i=0;iN;i+) if(numi=n)namei=nam;sexi=s;politici=poli;addressi=addr; outfilenumi namei sexi politici
6、 addressiendl; outfile.close(); cout修改完成!nendl; void search() int num200; string name200,politic200,address200; char sex200; int n; ifstream infile(student1.txt,ios:in); if(!infile)cerropen file error!;exit(1); for(int i=0;inuminameisexipoliticiaddressi; infile.close();while(1)cout请输入按何种方法查找:endl;co
7、ut -endl;cout | ;cout1.按学号查找 ; cout |endl;cout | ;cout2.按姓名查找 ; cout |endl;cout | ;cout3.按性别查找 ; cout |endl;cout | ;cout4.按政治面貌查找;cout |endl;cout | ;cout5.按家庭住址查找;cout |endl;cout | ;cout6.返回主菜单 ; cout |endl;cout | ;cout0.退出查找 ; cout |endl;cout -nnn;coutn;if(n=6)break;switch(n)case 1:while(1)cout请输入你
8、要查找学号(输入0返回查找方法):num199; if(num199=0)break; for(int i=0;iN;i+)if(numi=num199)cout查找结果为:endl;cout学号 姓名 性别 政治面貌 家庭住址endl;coutnumi namei sexi politici addressiendlendl;cout查找完成!nendl; break; case 2:while(1)cout请输入你要查找姓名(输入0返回查找方法):name199; if(name199=0)break; for(int i=0;iN;i+)if(namei=name199)cout查找结果
9、为:endl;cout学号 姓名 性别 政治面貌 家庭住址endl;coutnumi namei sexi politici addressiendlendl;cout查找完成!nendl; ;break; case 3:while(1)cout请输入你要查找性别(输入0返回查找方法):sex199; if(sex199=0)break; for(int i=0;iN;i+)if(sexi=sex199)cout查找结果为:endl;cout学号 姓名 性别 政治面貌 家庭住址endl;coutnumi namei sexi politici addressiendlendl;cout查找完成
10、!nendl; break; case 4:while(1)cout请输入你要查找政治面貌(输入0返回查找方法):politic199; if(politic199=0)break; for(int i=0;iN;i+)if(politici=politic199)cout查找结果为:endl;cout学号 姓名 性别 政治面貌 家庭住址endl;coutnumi namei sexi politici addressiendlendl;cout查找完成!nendl; break; case 5:while(1)cout请输入你要查找家庭住址(输入0返回查找方法):address199; if
11、(address199=0)break; for(int i=0;iN;i+)if(addressi=address199)cout查找结果为:endl;cout学号 姓名 性别 政治面貌 家庭住址endl;coutnumi namei sexi politici addressiendlendl;cout查找完成!nendl; break; default:cout输入错误!nendl;break;void del()int num200,n; string name200,politic200,address200; char sex200; ifstream infile(student
12、1.txt,ios:in); if(!infile)cerropen file error!;exit(1); cout 学号 姓名 性别 政治面貌 家庭住址endl; for(int i=0;inuminameisexipoliticiaddressi; cout numi namei sexi politici addressiendlendl; infile.close(); ofstream outfile(student1.txt,ios:out); if(!outfile)cerropen file error!;exit(1); while(1) coutnn!注意输入学号为0是
13、停止删除!nendl; cout请输入你要删除学生学号:n; if(n=0)break; for(int i=0;iN;i+) if(numi!=n)outfilenumi namei sexi politici addressiendl; cout删除完成!endl; N-; outfile.close();void show() int num; string name,politic,address; char sex; ifstream infile(student1.txt,ios:in); if(!infile)cerropen file error!;exit(1); cout学
14、号 姓名 性别 政治面貌 家庭住址endl; for(int i=0;inumnamesexpoliticaddress; coutnum name sex politic addressendlendl;int main()int n;while(1)cout -endl;cout | ;cout1.增加学生统计;cout |endl;cout | ;cout2.删除学生统计;cout |endl;cout | ;cout3.修改学生统计;cout |endl;cout | ;cout4.查找学生统计;cout |endl;cout | ;cout5.显示学生统计;cout |endl;co
15、ut |;cout(注意:输入学号为0时退出输入!);cout|endl;cout -nnendl;cout 请选择:nn;coutn;if(n=0)break;switch(n)case 1:add();break;case 2:del();break;case 3:change();break;case 4:search();break;case 5:show();break;default:break;7. 测试(主界面及各功效模块运行图及说明)一:主界面二:增加学生统计:三:删除学生统计:四:修改学生统计:五:查找学生统计:六:显示学生统计 8. 系统评价及展望系统能实现简单增加,删除,修改,查找学生信息,不过假如不按要求输入时候可能会出现系统瓦解,得不到运行结果。期望在以后学习中能学习更多知识,完善自己程序设计。