⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 admin.cpp

📁 很好的学习C++源码,基于C++版学生管理系统
💻 CPP
字号:
#include "Admin.h"             //管理类头文件

//函数功能:构造函数初始化成员变量
//输入参数:无
//输出参数:无
//返回值: 无
//修改人:邹明上
//修改时间:2006.06.26
CAdmin::CAdmin()
{
	m_cExit = 'N';  //初始化m_cExit字符变量
	for(int nI = 0;nI < 30;nI ++)  //初始化m_sTemp字符串
	{
		m_sTemp[nI] = '\0';
	}	
}

//函数功能:析构函数什么也不做
//输入参数:无
//输出参数:无
//返回值: 无
//修改人:邹明上
//修改时间:2006.06.26
CAdmin::~CAdmin()
{

}

//函数功能:调配登陆菜单类,菜单类,学生链表类,实现三大类之间切换
//输入参数:输入相关菜单参数值
//输出参数:显示相关菜单信息
//返回值: 无
//修改人:邹明上
//修改时间:2006.06.26
void CAdmin::ClassAdmin()
{
	CStudentList student;   //实例化一个学生对象,通过该对象去访问学生链表的公有成元函数
	CLogonInformation To(&student); //实例化一个登陆菜单对象,并调用构造函数实现2个登陆界面显示

	while(m_cExit != 'Y'&&m_cExit != 'y')
	{
		strcpy(m_sTemp,To.LogonJudge());  //调用登陆菜单函数,当输入结束时反回一个字符串,并考贝到m_sTemp字符串
		if(strcmp("student",m_sTemp) == 0) //判断返回的是否是"student",是则进入学生使用的菜单界面
		{
			/*-------到标识 Finish 处是管理系统(学生)菜单类实例化类对象程序-------*/
			CMenu mainStu("PSMS 学生查寻系统");
			CMenu findStu("查 寻 学 生 信 息");
			CMenu showStu("显 示 学 生 信 息");

			mainStu.Add("按不同方式查寻学生信息",&findStu);
			mainStu.Add("按不同方式显示学生信息",&showStu);
			mainStu.SetFront(NULL);

			findStu.Add("按学号查寻学生信息",NULL);
			findStu.Add("按姓名查寻学生信息",NULL);
			findStu.Add("姓名模糊查寻学生信息",NULL);
			findStu.SetFront(&mainStu);

			showStu.Add("按姓名排序查看学生信息",NULL);
			showStu.Add("按总成绩排序查看学生信息",NULL);
			showStu.SetFront(&mainStu);
			/*-------------------Finish---------------------*/
			while(strcmp(m_sTemp,"End"))  //当返回字符串是"End",退出主菜单(学生的)界面,同时要退到登陆菜单
			{
				strcpy(m_sTemp,mainStu.ShowMenu());
				if(strcmp(m_sTemp,"按学号查寻学生信息") == 0)
				{
					student.Find_Id();  //调用学生链表类的学号查寻函数
				}
				else if(strcmp(m_sTemp,"按姓名查寻学生信息") == 0)
				{
					student.Find_Name(); //调用学生链表类的姓名查寻函数
				}
				else if(strcmp(m_sTemp,"姓名模糊查寻学生信息") == 0)
				{
					student.FaintnessFind_Name(); //调用学生链表类的姓名模糊查寻函数
				}
				else if(strcmp(m_sTemp,"按姓名排序查看学生信息") == 0)
				{
					student.Show_Name();  //调用学生链表类的按姓名显示函数
				}
				else if(strcmp(m_sTemp,"按总成绩排序查看学生信息") == 0)
				{
					student.Show_Grade(); //调用学生链表类的按总成绩显示函数
				}
			}
		}
		else if(strcmp("teacher",m_sTemp) == 0) //判断返回的是否是"teacher",是则进入老师使用的菜单界面
		{
			/*-------到标识 Finish 处是管理系统(老师)菜单类实例化类对象程序-------*/
			CMenu mainTea("PSMS 学生管理系统");
			CMenu  addM("增 加 学 生 信 息");
			CMenu modifyM("修 改 学 生 信 息");
			CMenu  delM("册 除 学 生 信 息");
			CMenu fandM("查 寻 学 生 信 息");
			CMenu showM("显 示 学 生 信 息");

			mainTea.Add("增加学生信息",&addM);
			mainTea.Add("修改学生信息",&modifyM);
			mainTea.Add("册除学生信息",&delM);
			mainTea.Add("查寻学生信息",&fandM);
			mainTea.Add("显示学生信息",&showM);
			mainTea.SetFront(NULL);

			addM.Add("增加学生信息",NULL);
			addM.Add("查看所有学生信息",NULL);
			addM.SetFront(&mainTea);

			modifyM.Add("输入学号修改学生信息",NULL);
			modifyM.Add("输入姓名修改学生信息",NULL);
			modifyM.Add("查看所有学生信息",NULL);
			modifyM.SetFront(&mainTea);

			delM.Add("输入学号删除学生信息",NULL);
			delM.Add("输入姓名删除学生信息",NULL);
			delM.Add("删除所有学生信息",NULL);
			delM.Add("查看所有学生信息",NULL);
			delM.SetFront(&mainTea);

			fandM.Add("按学号查寻学生信息",NULL);
			fandM.Add("姓名模糊查寻学生信息",NULL);
			fandM.SetFront(&mainTea);

			showM.Add("按学生学号显示",NULL);
			showM.Add("按学生姓名显示",NULL);
			showM.Add("按分数总成绩显示",NULL);
			showM.SetFront(&mainTea);
			/*-------------------Finish---------------------*/
			while(strcmp(m_sTemp,"End")) //当返回字符串是"End",退出主菜单(老师的)界面,同时要退到登陆菜单
			{
				strcpy(m_sTemp,mainTea.ShowMenu());
				if(strcmp(m_sTemp,"增加学生信息") == 0)
				{
					student.Add();  //调用学生类链表的添加学生信息函数
				}
				else if(strcmp(m_sTemp,"按学生学号显示") == 0||strcmp(m_sTemp,"查看所有学生信息") == 0)
				{
					student.Show_Id(); //调用学生类链表的按学号显示函数
				}
				else if(strcmp(m_sTemp,"输入学号修改学生信息") == 0)
				{
					student.Modify_Id(); //调用学生类链表的按学号修改函数
				}
				else if(strcmp(m_sTemp,"输入姓名修改学生信息") == 0)
				{
					student.Modify_Name(); //调用学生类链表的按姓名修改函数
				}
				else if(strcmp(m_sTemp,"输入学号删除学生信息") == 0)
				{
					student.Delete_Id();  //调用学生类链表的输入学号删除函数
				}
				else if(strcmp(m_sTemp,"输入姓名删除学生信息") == 0)
				{
					student.Delete_Name();  //调用学生类链表的输入姓名删除函数
				}
				else if(strcmp(m_sTemp,"删除所有学生信息") == 0)
				{
					student.Delete_All();  //调用学生类链表的全部删除学生数据函数
				}
				else if(strcmp(m_sTemp,"按学号查寻学生信息") == 0)
				{
					student.Find_Id();   //调用学生链表类的学号查寻函数
				}
				else if(strcmp(m_sTemp,"姓名模糊查寻学生信息") == 0)
				{
					student.FaintnessFind_Name();  //调用学生链表类的姓名模糊查寻函数
				}
				else if(strcmp(m_sTemp,"按学生姓名显示") == 0)
				{
					student.Show_Name(); //调用学生链表类的按姓名显示函数
				}
				else if(strcmp(m_sTemp,"按分数总成绩显示") == 0)
				{
					student.Show_Grade(); //调用学生链表类的按总成绩显示函数
				}
			}
		}
		else if(strcmp("-1",m_sTemp) == 0) //判断返回的是否是"-1",是则显示确认关闭系统选项
		{
			printf("\n\n\t\t      系统信息:确定要关闭管理系统吗?");
			printf("\n\t\t\t       Y键确定退出,其他键取消");
			fflush(stdin);
			m_cExit = getch();
		}
	}

	To.CloseDisplayInfo();   //调用函数显示退出信息
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -