1、C+实现简单的学生信息管理系统控制台程序/ StudentInformationSystem.cpp : Defines the entry point for the console application./#include stdafx.h#include #include #include #include#includeclass Studentprivate: char idNumber13; /学号 char name30; /姓名 char address50; /地址 char telephone14; /电话号码 int gradeMath; /数学成绩 int grade
2、Physics; /物理成绩 int gradeEnglish; /英语成绩 double gradeMaPhEgAverage; /物数外平均 int rankGrade; /成绩排名 int gradeClassmate; /同学评分 int gradeTeacher; /老师评分 int gradeEthic; /道德评分 double gradeAll; /综合成绩 int rankAll; /综合排名public: Student(); /默认构造函数 void Student_WritePersonalInformation(char *iD, char *nam, char *a
3、dd, char *tel); /更改学生信息 void Student_WriteMaPhEgGrade(int graMa, int graPh, int graEg); /更改学生考试成绩 void Student_WriteOtherGrade(int graCl, int graTe, int graEth); /更改学生其他成绩 void Student_DisplayInformation(); /显示学生信息 char *Student_ReadID(); double Student_ReadGrade(); double Student_ReadTotalGrade();
4、int Student_ReadGradeRank(); int Student_ReadTotalGradeRank(); void Student_WriteGradeRank(int ranGr); /更改学生成绩排名 void Student_WriteTotalGradeRank(int ranAl); /更改学生综合排名 char *Student_ReadName();Student:Student() /默认构造函数 strncpy_s(idNumber, 000000000000,12); strncpy_s(name,空,30); strncpy_s(address, 空,
5、 50); strncpy_s(telephone, 空, 14); /电话号码 gradeMath=0; /数学成绩 gradePhysics=0; /物理成绩 gradeEnglish=0; /英语成绩 gradeMaPhEgAverage=0; /物数外平均 rankGrade=0; /成绩排名 gradeClassmate=0; /同学评分 gradeTeacher=0; /老师评分 gradeEthic=0; /道德评分 gradeAll=0; /综合成绩 rankAll=0; /综合排名 void Student:Student_WritePersonalInformation(c
6、har *iD, char *nam, char *add, char *tel) strncpy_s(idNumber,iD,12); strncpy_s(name, nam, 30); strncpy_s(address, add,50); strncpy_s(telephone, tel, 14);void Student:Student_WriteMaPhEgGrade(int graMa, int graPh, int graEg) gradeMath = graMa; gradePhysics = graPh; gradeEnglish = graEg; gradeMaPhEgAv
7、erage = (gradeMath + gradePhysics + gradeEnglish) / 3;void Student:Student_WriteOtherGrade(int graCl, int graTe, int graEth) gradeClassmate = graCl; gradeTeacher = graTe; gradeEthic = graEth; gradeAll = gradeMaPhEgAverage*0.6 + gradeClassmate*0.1 + gradeEthic*0.1 + gradeTeacher*0.2;void Student:Stud
8、ent_WriteGradeRank(int ranGr) rankGrade = ranGr;void Student:Student_WriteTotalGradeRank(int ranAl) rankAll = ranAl;void Student:Student_DisplayInformation() using namespace std; cout - endl; cout 学生信息 endl; cout 姓名: name endl 学号: idNumber endl 地址: address endl 电话: telephone endl 数学成绩: gradeMath end
9、l 物理成绩: gradePhysics endl 英语成绩: gradeEnglish endl 三科平均成绩: gradeMaPhEgAverage endl 学习成绩排名: rankGrade endl 同学评价得分: gradeClassmate endl 教师评价得分: gradeTeacher endl 道德修养评分: gradeEthic endl 综合成绩: gradeAll endl 综合成绩排名: rankAll endl; cout - endl;char *Student:Student_ReadID() return idNumber;double Student:S
10、tudent_ReadGrade() return gradeMaPhEgAverage;double Student:Student_ReadTotalGrade() return gradeAll;int Student:Student_ReadGradeRank() return rankGrade;int Student:Student_ReadTotalGradeRank() return rankAll;namespace studentInformation std:vector studentVector; int flagStudentChoose=0; int flagSt
11、udentFound=1;char *Student:Student_ReadName() return name;/-以上是基本数据结构的定义,同时定义了对数据的基本操作。定义完毕了,接下来是功能函数-void MainMenu();void EditMenu();void AddStudentPersonalInformation(int mode);void ModifyStudentInformation();void SearchStudent();void DeleteStudentInformation();void DisplayStudentInformation();voi
12、d RankByGrade();void RankByTotalGrade();void RankByID();bool CmpGrade(Student student1,Student student2); /这个函数的参数是两个Student类的对象bool CmpTotalGrade(Student student1, Student student2);bool CmpID(Student student1, Student student2);void DisplayAllStudentInformation();/-以下是主菜单界面函数-void MainMenu() int f
13、lagOperateInformation = 1; while (flagOperateInformation) using namespace std; cout - endl; cout 欢迎进入学生信息管理系统V1.0. endl endl; cout 按下1:进入学生信息管理系统. endl; cout 按下0:退出. endl; cout - endlendl flagOperateInformation; cin.clear(); cout endl; if (flagOperateInformation) EditMenu(); /-主菜单界面函数定义完毕-/-以下是编辑界面函
14、数-void EditMenu() int flagContinueOperation = 1; while (flagContinueOperation) flagContinueOperation = 0; using namespace std; cout - endl; cout 主菜单 endl; cout 按下1:添加学生信息. endl; cout 按下2:修改学生信息. endl; cout 按下3:删除学生信息. endl; cout 按下4:显示学生信息. endl; cout 按下5:按学号升序排序 endl; cout 按下6:读入已有信息(暂时没实现) endl; c
15、out 按下7:将信息输出(暂时没实现) endl; cout 按下8:显示系统内所有学生的信息 endl; cout 按下0:返回上一级. endl; cout - endl flagContinueOperation; cin.clear(); cout endl; switch (flagContinueOperation) case 1:AddStudentPersonalInformation(1); break; case 2:ModifyStudentInformation(); break; case 3:DeleteStudentInformation(); break; c
16、ase 4:DisplayStudentInformation(); break; case 5:RankByID(); break; case 6:cout 功能暂未实现 endl; break; case 7:cout 功能暂未实现 endl; break; case 8:DisplayAllStudentInformation(); break; case 0:break; /-/-以下是添加信息的界面-void AddStudentPersonalInformation(int mode) using namespace std; int flagAddPersonalInformat
17、ion; int flagAddGrade; int falgAddOtherGrade; Student student1; studentInformation:studentVector.push_back(student1); int currentObjectPosition; if (mode = 1) currentObjectPosition = studentInformation:studentVector.size() - 1; else currentObjectPosition = studentInformation:flagStudentChoose; /- co
18、ut 请依次添加基本信息、学习成绩和其他成绩,且不要使用空格 endl; cout - endl; cout 基本信息 endl; cout 按下1:录入学生基本信息; endl 按下0:跳过基本信息。endl - flagAddPersonalInformation; cin.clear(); if (flagAddPersonalInformation) char name30; char iD13; char address50; char phone14; cout name; cin.clear(); cout iD; cin.clear(); cout address; cin.c
19、lear(); cout phone; cin.clear(); studentInformation:studentVectorcurrentObjectPosition.Student_WritePersonalInformation(iD,name,address,phone); cout 基本信息输入成功! endl - endl; /- cout - endl; cout 学习成绩 endl; cout 按下1:录入学生学习成绩; endl 按下0:跳过学习成绩信息。 endl - flagAddGrade; cin.clear(); if (flagAddGrade) int ma
20、thGrade; int physicsGrade; int englishGrade; cout mathGrade; cin.clear(); cout physicsGrade; cin.clear(); cout englishGrade; cin.clear(); studentInformation:studentVectorcurrentObjectPosition.Student_WriteMaPhEgGrade(mathGrade, physicsGrade, englishGrade); cout 学习成绩输入成功! endl - endl; /- cout - endl;
21、 cout 其他成绩 endl; cout 按下1:录入学生其他成绩; endl 按下0:跳过其他成绩信息。 endl - flagAddGrade; cin.clear(); if (flagAddGrade) int peerGrade; int teacherGrade; int ethicGrade; cout peerGrade; cin.clear(); cout teacherGrade; cin.clear(); cout ethicGrade; cin.clear(); studentInformation:studentVectorcurrentObjectPosition
22、.Student_WriteOtherGrade(peerGrade, teacherGrade, ethicGrade); cout 其他成绩输入成功! endl - endl; RankByGrade(); RankByTotalGrade(); cout 学生成绩录入成功! endl; cout - endlendl;void SearchStudent() using namespace std; using namespace studentInformation; char ID13; cout 请输入学生的学号: ID; cin.clear(); cout -endl; int vectorSize = studentVector.size(); int i = 0; while (ivectorSize) & (flagStudentFound!=0) flagStudentFound = strcmp(ID, studentVectori.St
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1