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

📄 学生选课系统.cpp

📁 能够添加课程、学生
💻 CPP
📖 第 1 页 / 共 5 页
字号:
	fin.close();
	fin.clear();
	fin.open("student.txt");
    if (!fin)
	{
		cout<<"\n\n\n\n\t\t你的用户名不存在!"<<endl;
		cout<<"\t\t你可能是还没有注册,请你先到管理员处注册!"<<endl;
		cout<<"\t\t请按任意键继续!";
		getch();
		system("cls");
		handle_Memu1();
	}
	fin.get();
	while (!fin.eof())
	{
		fin>>stu.m_csno>>stu.m_csname>>stu.m_csex>>stu.m_cbanji>>stu.m_czhuanye
			>>stu.m_imaxcourse>>stu.m_ifactcourse;
		if(strcmp(stu.m_csno,sno)==0)
		{
			cout<<"\n\t\t\t请输入你的旧密码并按回车键确认:";
			cin>>scode;			
			fin.close();
			fin.clear();
			fin.open("scode.txt");
			if (!fin)
			{
				cout<<"\n\n\n\n\t\t您的用户名不存在!"<<endl;
				exit(0);
			}
			fin.get();
			while (!fin.eof())
			{
				fin>>stu.m_csno>>m_cscode;
				if(strcmp(m_cscode,scode)==0)
				{
					cout<<"\n\t\t\t请输入你的新密码并按回车键确认:";
					strcpy(scode,Setscode());
					cout<<"\n\t\t\t请再次输入你的新密码并按回车键确认:";
					if(strcmp(scode,Setscode())==0)
					{
						Writef("scode.txt");
						cout<<"修改密码成功!";
						return;
					}
					else
						cerr<<"新密码输入不一致!";
				}
			}
			cerr<<"旧密码输入错误!";
		}
		else
			cerr<<"用户名输入错误!";
	}
	fin.close();
}
//********************************************************************
void CLand::modifiy1(char *fp)
{
	char admin[20],admincode[20];
	ifstream fin(fp);
    cout<<"\n\t\t\t请输入你的用户名按回车键确认:";
    cin>>admin;
	fin.close();
	fin.clear();
	fin.open("admin.txt");
	if (!fin)
	{
		cout<<"\n\n\n\n\t\t您的用户名不存在!"<<endl;
		exit(0);
	}
	fin.get();
	while (!fin.eof())
	{
		fin>>m_cadmin>>m_cadmincode;
		if(strcmp(m_cadmin,admin)==0)
		{
			cout<<"\n\t\t\t请输入你的旧密码并按回车键确认:";
			cin>>admincode;			
			fin.close();
			fin.clear();
			fin.open("admin.txt");
			if (!fin)
			{
				cout<<"\n\n\n\n\t\t您的用户名不存在!"<<endl;
				exit(0);
			}
			fin.get();
			while (!fin.eof())
			{
				fin>>m_cadmin>>m_cadmincode;
				if(strcmp(m_cadmincode,admincode)==0)
				{
					cout<<"\n\t\t\t请输入你的新密码并按回车键确认:";
					strcpy(admincode,Setadmincode());
					cout<<"\n\t\t\t请再次输入你的新密码并按回车键确认:";
					if(strcmp(admincode,Setadmincode())==0)
					{
						Writef2("admin.txt");
						cout<<"修改密码成功!";
						return;
					}
					else
						cerr<<"新密码输入不一致!";
				}
			}
			cerr<<"旧密码输入错误!";			
		}
		else
			cerr<<"用户名输入错误!";
	}
	fin.close();
}
//********************************************************************
void CLand::modifiy2(char *fp)
{
	char tno[20];
	int c=0,d=0,_f=0,n=0,flag=0;
	char tcode[20];
    cout<<"\n\t\t\t请输入您的用户名按回车键确认:";
    cin>>tno;
	ifstream fin(fp);
	fin.close();
	fin.clear();
	fin.open("teacher.txt");
    if (!fin)
	{
		cout<<"\n\n\n\n\t\t您的用户名不存在!"<<endl;
		cout<<"\t\t您可能是还没有注册,请您先到管理员处注册!"<<endl;
		cout<<"\t\t请按任意键继续!";
		getch();
		system("cls");
		handle_Memu1();
	}
	fin.get();
	while (!fin.eof())
	{
		fin>>teacher.m_ctno>>teacher.m_ctname>>teacher.m_ctxi>>teacher.m_ctsex>>teacher.m_ctzhicheng;
		if(strcmp(teacher.m_ctno,tno)==0)
		{
			cout<<"\n\t\t\t请输入您的旧密码并按回车键确认:";
			cin>>tcode;			
			fin.close();
			fin.clear();
			fin.open("tcode.txt");
			if (!fin)
			{
				cout<<"\n\n\n\n\t\t您的用户名不存在!"<<endl;
				exit(0);
			}
			fin.get();
			while (!fin.eof())
			{
				fin>>teacher.m_ctno>>m_ctcode;
				if(strcmp(m_ctcode,tcode)==0)
				{
					cout<<"\n\t\t\t请输入您的新密码并按回车键确认:";
					strcpy(tcode,Settcode());
					cout<<"\n\t\t\t请再次输入您的新密码并按回车键确认:";
					if(strcmp(tcode,Settcode())==0)
					{
						Writef1("tcode.txt");
						cout<<"修改密码成功!";
						return;
					}
					else
						cerr<<"新密码输入不一致!";
				}								
			}		
			cerr<<"旧密码输入错误!";
		}
		else
			cerr<<"用户名输入错误!";
	}
	fin.close();
}
/*********************************************************************
*                                                                    *
*********************************************************************/
void tuichu(void)
{
system("cls");
system("color A4");
cout<<"\n\n\t\t\t  谢谢您的使用!\t再见!\n\n"<<endl;
cout<<"\t\t\t希望您提出宝贵意见。我们将不断改进。谢谢!\n\n"<<endl;
cout<<"\t\t\t            姓名:刘刚华  陈显清\n\n"<<endl;
cout<<"\t\t\t            学校:长沙学院\n\n\n"<<endl;
exit(0);
}
/*********************************************************************
*                                                                    *
*********************************************************************/
void Memu(void)
{
	system("cls");
	cout<<"\n\n\n\n\n\n\n\n\t\t\t欢迎您进入学生选课系统";	
	Sleep(500);
	cout<<"\n\n\n\n\n\n\t\t\t\t制作人:\n\t\t\t\t\t信科二班:\n";
	cout<<"\t\t\t\t\t☆☆刘刚华☆☆☆陈显清☆☆"<<endl;
	cout<<"请按任意键继续";
	getch();
	system("cls");
}
/*********************************************************************
*                                                                    *
*********************************************************************/
int shuzi()  
{
	unsigned int i=1;
	int j;
    char ch[10];
	while(1)
	{
		cin>>ch;
		if(ch[0]=='-'||isdigit(ch[0])!=0)
		{
			for(;i<strlen(ch);i++)
				if(isdigit(ch[i])==0) 
					break;
				if(i+1>strlen(ch)&&!(ch[0]=='-'&&i==1))
				{
					j=atoi(ch);
					return j;
				}
				else
					cout<<"\t请输入数字:";
		}
		else
			cout<<"\t请输入数字:";
	}
}

/*********************************************************************
*                                                                    *
*********************************************************************/
int Memu3()
{
		system("cls");
		system("color F9");
		cout<<"\n\n\n\n\n\n\t*****************************************************************\t\n\n";
		cout<<"\t\t\t【☆学生选课管理☆】 \n\n"; 
		cout<<" \t1.△选课    △\t\t";
	    cout<<"2.△查看已修课程△\n\n";
		cout<<"\t3.△查看成绩△\t";
		cout<<"4.△退选课程△\n\n";
		cout<<"\t5.△修改密码△\t\t";
		cout<<"6.△查看所有课程及相关信息△\n\n";
		cout<<"\t7.△切换用户△\t\t";		
		cout<<"0.△退出△";
		cout<<"\n\n\t*****************************************************************\t\t";
		cout<<"\n\t请选择:(0-7)";
		int n;
		n=shuzi();
		while(n<=-1||n>=9)
		{
			cout<<"你的输入有误,请重试\n请选择:(0-9):";
			n=shuzi();
		}
		return n;
}
/*********************************************************************
*                                                                    *
*********************************************************************/
void handle_Memu3(char *sno)
{
	for(;;)
	{
		switch(Memu3())
		{
		case 1:
			{
				system("cls");
				CSubject subject;
				subject.xuanke("subject.txt",sno);
				system("cls");
				break;
			}
		case 2:
			{
				system("cls");
				CSubject subject;
				subject.show5("subject.txt",sno);
				cout<<"请按任意键继续";
			    getch();
			    system("cls");
				break;
			}
		case 3:
			{
				system("cls");
				CSubject subject;
				subject.Readf2("mark.txt",sno);
				cout<<"请按任意键继续";
			    getch();
			    system("cls");
				break;
			}
		case 4:
			{
				system("cls");
				CSubject subject;
				subject.tuixuan(sno);
				cout<<"请按任意键继续";
			    getch();
			    system("cls");
				break;
			}
		case 5:
			{
				system("cls");
				CLand land;
				land.modifiy("snode.txt");
				cout<<"请按任意键继续";
			    getch();
			    system("cls");
				break;
			}
		case 6:
			{
				system("cls");
				CCourse course;
				course.show2("course.txt");
				cout<<"请按任意键继续";
			    getch();
			    system("cls");
				break;
			}
		case 7:
			{
				system("cls");
				handle_Memu1();
				break;
			}
		case 0:
			{
				tuichu();
			}
		default:
			system("cls");
			cout<<"你的输入有误:";
			break;
		}
	}
}
/*********************************************************************
*                                                                    *
*********************************************************************/
int Memu5()
{
		system("cls");
		system("color F9");		
		cout<<"\n\n\n\n\n\n\t*****************************************************************\t\n\n";
		cout<<"\t\t\t【☆课程管理员☆】 \n\n"; 
		cout<<" \t1.△新生注册△\t\t";
	    cout<<"2.△添加课程及相关信息△\n\n";
		cout<<"\t3.△添加教师及相关信息△\t";
		cout<<"4.△查看所有学生选课情况△\n\n";
		cout<<"\t5.△修改密码△\t\t";
		cout<<"6.△查看所有课程△\n\n";
		cout<<"\t7.△显示所有学生△\t\t";		
		cout<<"8.△显示老师信息△\n\n";		
		cout<<"\t9.△切换用户△\t\t";
		cout<<"0.△删除+修改+清空+退出△";
		cout<<"\n\n\t*****************************************************************\t\t";
		cout<<"\n\t请选择:(0-9)";
		int n;
		n=shuzi();
		while(n<=-1||n>10)
		{
			cout<<"你的输入有误,请重试\n请选择:(0-9):";
			n=shuzi();
		}
		return n;
}
/*********************************************************************
*                                                                    *
*********************************************************************/
void handle_Memu5()
{
	for(;;)
	{
		switch(Memu5())
		{
		case 1:
			{
				system("cls");
				CStudent stu;
	            stu.addstudent();
				cout<<"请按任意键继续";
				getch();
				system("cls");
				break;
			}
	case 2:
			{
				system("cls");
				CCourse course;
	            course.addcourse("course.txt");
				cout<<"请按任意键继续";
				getch();
				system("cls");
				break;
			}
		case 3:
			{
				system("cls");
				CTeacher teacher;
				teacher.addteacher();
				cout<<"请按任意键继续!";
				getch();
				system("cls");
				break;
			}
		case 4:
			{
				system("cls");
				CSubject subject;
				subject.show4("subject.txt");
				getch();
				system("cls");
				break;
			}
		case 5:
			{
				system("cls");
				CLand land;
				land.modifiy1("admin.txt");
				cout<<"请按任意键继续";
				getch();
				system("cls");
				break;
			}
		case 6:
			{
				system("cls");
				CCourse course;
				course.show2("course.txt");
				cout<<"请按任意键继续";
				getch();
				system("cls");
				break;
			}
		case 7:
			{
				system("cls");
				CStudent stu;
				stu.show("student.txt");
				cout<<"请按任意键继续";
				getch();
				system("cls");
				break;
			}
		case 8:
			{
				system("cls");
				CTeacher teach;
				teach.show3("teacher.txt");
				cout<<"请按任意键继续";
				getch();
				system("cls");
				break;
			}
		case 9:
			{
				system("cls");
				handle_Memu1();
				break;
			}
		case 0:
			{
				system("cls");
				cout<<"\n\n\n\n\t请选择:1,删除学生,2,删除课程,3,删除教师,";
				cout<<"\n\n\t4.修改上课时间、地点,5,清空文件,0,退出";
				cout<<" 请选择:(0-5)";
				char l;
				cin>>l;
				switch(l)
				{
				case '1':
					{
						system("cls");
						char *sno;
						sno=new char;
						int *p;
						p=new int;
						CStudent stu;
						stu.delstudent(sno,p);						
						CSubject subject;
						subject.Readf1("subject.txt");
						subject.Queryf2(sno,p);
						cout<<"请按任意键继续";
						getch();
						break;
					}
				case '2':
					{
						system("cls");
						char *cno;
						cno=new char;
						int *p;
						p=new int;
						CCourse course;
						course.delcourse(cno,p);
						CSubject subject;
						subject.Readf1("subject.txt");
						subject.Queryf3(cno,p);
						cout<<"请按任意键继续";
						getch();
						break;
					}
				case '3':
					{
						system("cls");
						CTeacher teacher;
						teacher.delteacher();
						cout<<"请按任意键继续";
						getch();
						break;
					}
				case '4':
					{
						system("cls");
						char *cno,*address,*time;
						cno=new char;
						address=new char;
						time=new char;
						CSubject subject;
						subject.xiugai(cno,address,time);
						CCourse course;
						course.Readf1("course.txt");
						course.Queryf2(cno,address,time);
						cout<<address<<time;
						delete time;
						cout<<"请按任意键继续";
						getch();
						break;
					}
				case '5':
					{
						system("cls");
						char *fp;
						fp=new char;
						cout<<"\n\n\n\t\t请输入要清空的文件名:";
						cin>>fp;
						ifstream fin(fp);
						if (!fin)
						{
							cout<<"文件名输入错误!按任意键继续..."<<endl;
							getch();
							break;
						}
						fin.close();
						

⌨️ 快捷键说明

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