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

📄 operater.cpp

📁 Visual C++做的一个学生学习管理系统 内有源码和说明
💻 CPP
字号:

#include "operater.h"

void Operater::display()
{
	cout<<endl<<endl;
	cout<<"**************************** 学生管理系统 **************************"<<endl;
	cout<<"1:			添加一个学生信息"<<endl;
	cout<<"2:			删除一个学生信息"<<endl;
	cout<<"3:			显示所有学生的姓名"<<endl;
	cout<<"4:			根据姓名显示单个学生所有信息"<<endl;
	cout<<"5:			根据姓名对单个学生进行编辑"<<endl;
	cout<<"6:			帮助菜单"<<endl;
	cout<<"7:			保存数据"<<endl;
	cout<<"0:			退出系统"<<endl;
	cout<<"********************************************************************"<<endl;
}

void Operater::Loop()
{
	List L1;        //List 对象
	char ch[20];
	nodetype *p, *head;   
	int i;		    //存放节点序号

	p=L1.load();	//初始化:从外部读入数据创建链表

	head=p;
	display();

	while(1)
	{
		cout<<endl<<endl;
		cout<<"请输入选择(帮助选项--> 6 ): "<<endl;
		cin>>ch;

		system("cls");
		if(L1.check(ch, "1"))
		{
			p=L1.insnode(0);
			head=p;

			system("cls");
			cout<<endl;
			cout<<"************** 添加一个学生信息 ******************"<<endl;
			cout<<"下面输入个人信息: "<<endl;
			L1.editperson(p);
			cout<<"下面输入学科成绩: "<<endl;
			L1.editscore(p);
			cout<<"下面输入联系方式: "<<endl;
			L1.edittelephone(p);
		}

		if(L1.check(ch, "2"))
		{
			system("cls");
			cout<<endl;
			cout<<"************** 删除一个学生信息 ******************"<<endl;
			L1.dispname();
			cout<<"请输入学生姓名: "<<endl;
			cin>>ch;
			i=L1.find2(ch);
			L1.delnode(i);
		}

		if(L1.check(ch, "3"))
		{
			system("cls");
			cout<<endl;
			cout<<"************** 显示所有学生姓名 ******************"<<endl;
			L1.dispname();
		}

		if(L1.check(ch, "4"))
		{
			system("cls");
			cout<<endl;
			cout<<"************** 根据姓名显示单个学生所有信息 ******************"<<endl;
			L1.dispname();
			cout<<"请输入学生姓名: "<<endl;
			cin>>ch;
			p=L1.find(ch);
			L1.dispnode(p);
		}

		if(L1.check(ch, "6"))
		{
			display();
		}

		if(L1.check(ch, "7"))		//保存数据
		{
			FILE *fp;
			if((fp=fopen("student.txt", "w"))==NULL)
			{
				cout<<"打开文件失败"<<endl;
				return;
			}

			int i;
			char t[255];

			//将 L1.listlen() 赋予字符串中的数字
			sprintf(t, "The Length Of Link: %d\n", L1.listlen());	

			fputs(t, fp);
			strcpy(t, "\n");
			fputs(t, fp);

			p=L1.findnode(1);				//将链表头指针赋予 p

			for(i=0; i<L1.listlen(); i++)
			{
				fputs(p->address, fp);		//输出地址
				fputs(p->birthday, fp);		//输出生日

				fputs(p->sc.num, fp);		//输出学号
				fputs(p->sc.chinese, fp);	//输出语文成绩
				fputs(p->sc.english, fp);	//输出英语成绩
				fputs(p->sc.math, fp);		//输出数学成绩
				fputs(p->sc.physics, fp);	//输出物理成绩

				fputs(p->pe.name, fp);		//输出姓名
				fputs(p->pe.sex, fp);		//输出性别
				fputs(p->pe.GJ, fp);		//输出国籍
				fputs(p->pe.MZ, fp);		//输出民族
				fputs(p->pe.XL, fp);		//输出学历

				fputs(p->te.SJ, fp);		//输出手机
				fputs(p->te.JD, fp);		//输出家庭电话
				fputs(p->te.XD, fp);		//输出学校电话
				fputs(t, fp);

				p=p->next;
			}
			p=head;
			fclose(fp);
		}

		if(L1.check(ch, "5"))
		{
			char c[20];
			system("cls");
			cout<<endl;
			cout<<"************** 根据姓名对单个学生进行编辑 ******************"<<endl;
			L1.dispname();
			cout<<"请输入学生姓名: "<<endl;
			cin>>c;
			p=L1.find(c);

			system("cls");
			cout<<endl<<endl;
			cout<<"*********************************************************"<<endl;
			cout<<"1:			编辑个人信息"<<endl;
			cout<<"2:			编辑学科成绩"<<endl;
			cout<<"3:			编辑联系方式"<<endl;
			cout<<"4:			显示个人信息"<<endl;
			cout<<"5:			显示学科成绩"<<endl;
			cout<<"6:			显示联系方式"<<endl;
			cout<<"7:			显示该学生所有信息"<<endl;
			cout<<"8:			帮助菜单"<<endl;
			cout<<"9:			返回上一级菜单"<<endl;
			cout<<"*********************************************************"<<endl;

			while(1)
			{
				cout<<endl<<endl;
				cout<<"请输入选择(帮助选项--> 8 ): "<<endl;
				cin>>c;
				system("cls");

				if(L1.check(c, "1"))
				{
					system("cls");
					cout<<endl;
					cout<<"************** 编辑个人信息 ******************"<<endl;
					L1.editperson(p);
				}
			
				else if(L1.check(c, "2"))
				{
					system("cls");
					cout<<endl;
					cout<<"************** 编辑学科成绩 ******************"<<endl;
					L1.editscore(p);
				}
			
				else if(L1.check(c, "3"))
				{
					system("cls");
					cout<<endl;
					cout<<"************** 编辑联系方式 ******************"<<endl;
					L1.edittelephone(p);
				}
			
				else if(L1.check(c, "4"))
				{
					system("cls");
					cout<<endl;
					cout<<"************** 显示个人信息 ******************"<<endl;
					L1.dispperson(p);
				}

				else if(L1.check(c, "5"))
				{
					system("cls");
					cout<<endl;
					cout<<"************** 显示学科成绩 ******************"<<endl;
					L1.dispscore(p);
				}

				else if(L1.check(c, "6"))
				{
					system("cls");
					cout<<endl;
					cout<<"************** 显示联系方式 ******************"<<endl;
					L1.disptelephone(p);
				}

				else if(L1.check(c, "7"))
				{
					system("cls");
					L1.dispnode(p);
				}

				else if(L1.check(c, "8"))
				{
					system("cls");
					L1.help();
				}

				else if(L1.check(c, "9"))
				{
					display();
					break;	//用 break 跳出本循环,不要用 return ,return 是退出程序
				}
			}
		}

		else if(L1.check(ch, "0"))
			return;
	}
	return;
}


⌨️ 快捷键说明

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