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

📄 main.cpp

📁 用C++编写的教师学生相关信息和统计系统
💻 CPP
字号:
#include"title.h"
#include "iostream.h"
//
void inserting(list &pp);
void del(list &pp);
void searching(list &PP);
void saving(list &pp);
void order(list &pp);
void reading(list &pp);
//
void main()
{
	list people;
    teacher a1("heliang",1,"male","1989-2-3","finance","economics","professor");
    worker a2("xiao ming",2,"female","1976-12-30","restaurant","worker");
	undergraduate a3("xiang gang",3,"male","1986-4-3",89,89,63,"computer",2003,"undergraduate");
	postgraduate a4("xiao qiang",4,"female","1980-1-23",94,89,93,"law",2001,"professor wang","law");
	teacher_worker a5("wang",5,"male","1976-9-9","physics","light theory","tutor","school company","vice manager");
	postteacher a6("fang",6,"male","1978-4-3",84,63,86,"chemistry",2000,"professor li","organism","biology","plant","tutor");
	postworker a7("feng",7,"male","1977-9-1",67,66,65,"electronic",1999,"vice professor he","communicate","shop","seller");
	people.insert(&a1);
	people.insert(&a2);
    people.insert(&a3);
	people.insert(&a4);
	people.insert(&a5);
	people.insert(&a6);
    people.insert(&a7);
	people.printlist();
   
	  int i=0;
    while(i!=8)
		{
		  cout<<"1:插入  2:查找   3:删除   4:浏览   5:打开文件  6:储存  7:排序  8:退出"<<endl;
		  cout<<"--------------------------------------------------------------"<<endl;
	      cin>>i;
		  switch (i)
				{
				case 1:
					inserting(people);
					break;
				case 2:
					searching(people);
					break;
				case 3:
					del(people);
					break;
				case 4:
					people.printlist();
					break;
				case 5:
					reading(people);
					break;
				case 6:
					saving(people);
					break;
				case 7:
                    order(people);
					break;
				default:
					break;
				}
				
		}	
					
	
		
}
//
void reading(list &pp)
{ 
  pp.clear();
  char nam[50];
  cout<<"输入要打开的文件路径:";
  cin>>nam;
  char tt[5],aa[5];
  int i=0;
  ifstream in(nam);
  while(i!=100)
  {
	  in.getline(tt,10,'\n');
	  in.getline(aa,10,'\n');
	  i=atof(tt);
	  if(i==1)
		{
			char a1[11][30];
			in.getline(a1[0],50,'\n');
			int i1;
			i1=atof(a1[0]);
			in.getline(a1[1],50,'\n');
			in.getline(a1[2],50,'\n');
			in.getline(a1[3],50,'\n');
			in.getline(a1[4],50,'\n');
			int i2;
			i2=atof(a1[4]);
			in.getline(a1[5],50,'\n');
			int i3;
			i3=atof(a1[5]);
			in.getline(a1[6],50,'\n');
			int i4;
			i4=atof(a1[6]);
			in.getline(a1[7],50,'\n');
			in.getline(a1[8],50,'\n');
			int i5;
			i5=atof(a1[8]);
			in.getline(a1[9],50,'\n');
			in.getline(a1[10],50,'\n');
			postgraduate man1(a1[1],i1,a1[2],a1[3],i2,i3,i4,a1[7],i5,a1[9],a1[10]);
			pp.insert(&man1);
		}
	if(i==2)
		{
	     char a2[14][30];
		 int a[5];
		 in.getline(a2[0],50,'\n');
		 a[0]=atof(a2[0]);
		 in.getline(a2[1],50,'\n');
		 in.getline(a2[2],50,'\n');
		 in.getline(a2[3],50,'\n');
		 in.getline(a2[4],50,'\n');
		 a[1]=atof(a2[4]);
		 in.getline(a2[5],50,'\n');
         a[2]=atof(a2[5]);
		 in.getline(a2[6],50,'\n');
		 a[3]=atof(a2[6]);
		 in.getline(a2[7],50,'\n');
		 in.getline(a2[8],50,'\n');
		 a[4]=atof(a2[8]);
		 in.getline(a2[9],50,'\n');
		 in.getline(a2[10],50,'\n');
		 in.getline(a2[11],50,'\n');
		 in.getline(a2[12],50,'\n');
		 in.getline(a2[13],50,'\n');
		 postteacher man2(a2[1],a[0],a2[2],a2[3],a[1],a[2],a[3],a2[7],a[4],a2[9],a2[10],a2[11],a2[12],a2[13]);
		 pp.insert(&man2);
		}
    if(i==3)
		{
		 char a3[13][30];
		 int b[5];
		 in.getline(a3[0],50,'\n');
		 b[0]=atof(a3[0]);
		 in.getline(a3[1],50,'\n');
		 in.getline(a3[2],50,'\n');
		 in.getline(a3[3],50,'\n');
		 in.getline(a3[4],50,'\n');
		 b[1]=atof(a3[4]);
		 in.getline(a3[5],50,'\n');
         b[2]=atof(a3[5]);
		 in.getline(a3[6],50,'\n');
		 b[3]=atof(a3[6]);
		 in.getline(a3[7],50,'\n');
		 in.getline(a3[8],50,'\n');
		 b[4]=atof(a3[8]);
		 in.getline(a3[9],50,'\n');
		 in.getline(a3[10],50,'\n');
		 in.getline(a3[11],50,'\n');
		 in.getline(a3[12],50,'\n');
		 postworker man3(a3[1],b[0],a3[2],a3[3],b[1],b[2],b[3],a3[7],b[4],a3[9],a3[10],a3[11],a3[12]);
		 pp.insert(&man3);
		}
   if(i==4)
		{	
         char a4[10][30];
		 int c[4];
		 in.getline(a4[0],50,'\n');
		 c[0]=atof(a4[0]);
		 in.getline(a4[1],50,'\n');
		 in.getline(a4[2],50,'\n');
		 in.getline(a4[3],50,'\n');
		 in.getline(a4[4],50,'\n');
		 c[1]=atof(a4[4]);
		 in.getline(a4[5],50,'\n');
         c[2]=atof(a4[5]);
		 in.getline(a4[6],50,'\n');
		 c[3]=atof(a4[6]);
		 in.getline(a4[7],50,'\n');
		 in.getline(a4[8],50,'\n');
		 in.getline(a4[9],50,'\n');
		 teacher man4(a4[1],c[0],a4[2],a4[3],a4[7],a4[8],a4[9]);
		 pp.insert(&man4);
   }
  if(i==5)
	{ 
         char a5[12][30];
		 int c[4];
		 in.getline(a5[0],50,'\n');
		 c[0]=atof(a5[0]);
		 in.getline(a5[1],50,'\n');
		 in.getline(a5[2],50,'\n');
		 in.getline(a5[3],50,'\n');
		 in.getline(a5[4],50,'\n');
		 c[1]=atof(a5[4]);
		 in.getline(a5[5],50,'\n');
         c[2]=atof(a5[5]);
		 in.getline(a5[6],50,'\n');
		 c[3]=atof(a5[6]);
		 in.getline(a5[7],50,'\n');
		 in.getline(a5[8],50,'\n');
		 in.getline(a5[9],50,'\n');
		 in.getline(a5[10],50,'\n');
		 in.getline(a5[11],50,'\n');
		 teacher_worker man5(a5[1],c[0],a5[2],a5[3],a5[7],a5[8],a5[9],a5[10],a5[11]);
		 pp.insert(&man5);
	}
  if(i==6)
	{
		char a6[11][30];
		int d[5];
		in.getline(a6[0],50,'\n');
		d[0]=atof(a6[0]);
		in.getline(a6[1],50,'\n');
		in.getline(a6[2],50,'\n');
		in.getline(a6[3],50,'\n');
		in.getline(a6[4],50,'\n');
		d[1]=atof(a6[4]);
		in.getline(a6[5],50,'\n');
	    d[2]=atof(a6[5]);
		in.getline(a6[6],50,'\n');
	    d[3]=atof(a6[6]);
		in.getline(a6[7],50,'\n');
		in.getline(a6[8],50,'\n');
		d[4]=atof(a6[8]);
		in.getline(a6[9],50,'\n');
		undergraduate man6(a6[1],d[0],a6[2],a6[3],d[1],d[2],d[3],a6[7],d[4],a6[9]);
		pp.insert(&man6);

	}
  if(i==7)
	{
		char a7[9][30];
		int e[5];
		in.getline(a7[0],50,'\n');
		e[0]=atof(a7[0]);
		in.getline(a7[1],50,'\n');
		in.getline(a7[2],50,'\n');
		in.getline(a7[3],50,'\n');
		in.getline(a7[4],50,'\n');
		e[1]=atof(a7[4]);
		in.getline(a7[5],50,'\n');
	    e[2]=atof(a7[5]);
		in.getline(a7[6],50,'\n');
	    e[3]=atof(a7[6]);
		in.getline(a7[7],50,'\n');
		in.getline(a7[8],50,'\n');
		worker man7(a7[1],e[0],a7[2],a7[3],a7[7],a7[8]);
		pp.insert(&man7);
	}
  }
  in.close();
  pp.printlist();
  
}

//
void order(list &pp)
{
  list temp;
  int i;
  cout<<"1 按数学成绩排序 2 按计算机成绩排序 3 按英语成绩排  其他 按总成绩排序"<<endl;
  cin>>i;
  temp=pp.order(i);
  temp.printlist();
}

//
void saving(list &pp)
{
	char nam[50];
	cout<<"输入要存储的路径:";
	cin>>nam;
	pp.save(nam);
}


//
void searching(list &pp)
{
	char nam[30];
	cout<<"要找的人名:";
	cin>>nam;
	pp.seeking(nam);
}

//
void del(list &pp)
{	
	char nam[30];
	cout<<"输入要删除的人名:";
	cin>>nam;
	pp.remove(nam);
}
//
void inserting(list &pp)
{ 
  int j;
  char ss[9][30];
  int a[2];
  float b[3];
  cout<<"which kind of people:"<<endl<<"1.本科生 2.研究生 3.教师 4.职工 5.教师在读研究生 6.职工在职研究生   其他:兼职教师"<<endl;
  cin>>j;
  cout<<"输入姓名:";
  cin>>ss[0];
  cout<<"编号:";
  cin>>a[0];
  cout<<"性别:";
  cin>>ss[1];
  cout<<"出生日期:";
  cin>>ss[2];
  if(j==1)
	{ 
		cout<<"数学:";
		cin>>b[0];
		cout<<"计算机:";
		cin>>b[1];
		cout<<"英语:";
		cin>>b[2];
		cout<<"系:";
		cin>>ss[3];
		cout<<"年级:";
		cin>>a[1];
		cout<<"状态:";
        cin>>ss[4];
        undergraduate man(ss[0],a[0],ss[1],ss[2],b[0],b[1],b[2],ss[3],a[1],ss[4]);
		pp.insert(&man);
	}
  else if(j==2)
	{
	  	   cout<<"数学:";
		   cin>>b[0];
		   cout<<"计算机:";
		   cin>>b[1];
		   cout<<"英语:";
		   cin>>b[2];
		   cout<<"系:";
		   cin>>ss[3];
		   cout<<"年级:";
		   cin>>a[1];
		   cout<<"导师:";
		   cin>>ss[4];
		   cout<<"专业:";
		   cin>>ss[5];
		   postgraduate man(ss[0],a[0],ss[1],ss[2],b[0],b[1],b[2],ss[3],a[1],ss[4],ss[5]);
		   pp.insert(&man);
	}       
	  

	else if(j==3)
		{
		   cout<<"部门";
		   cin>>ss[3];
		   cout<<"专业";
		   cin>>ss[4];
		   cout<<"职位";
		   cin>>ss[5];
           teacher man(ss[0],a[0],ss[1],ss[2],ss[3],ss[4],ss[5]);
		   pp.insert(&man);
		}   
	else if(j==4)
		  { 
		   cout<<"工作部门";
		   cin>>ss[3];
		   cout<<"职位";
		   cin>>ss[4];
		   worker man(ss[0],a[0],ss[1],ss[2],ss[3],ss[4]);
		   pp.insert(&man);
		}
     else if(j==5)
		   {
			cout<<"数学:";
		   cin>>b[0];
		   cout<<"计算机:";
		   cin>>b[1];
		   cout<<"英语:";
		   cin>>b[2];
		   cout<<"系:";
		   cin>>ss[3];
		   cout<<"年级:";
		   cin>>a[1];
		   cout<<"导师:";
		   cin>>ss[4];
		   cout<<"专业:";
		   cin>>ss[5];
			cout<<"部门";
		   cin>>ss[6];
		   cout<<"专业";
		   cin>>ss[7];
		   cout<<"职位";
		   cin>>ss[8];
           postteacher man(ss[0],a[0],ss[1],ss[2],b[0],b[1],b[2],ss[3],a[1],ss[4],ss[5],ss[6],ss[7],ss[8]);
		   pp.insert(&man);
		}		
	else if (j==6)
		{  
		   cout<<"数学:";
		   cin>>b[0];
		   cout<<"计算机:";
		   cin>>b[1];
		   cout<<"英语:";
		   cin>>b[2];
		   cout<<"系:";
		   cin>>ss[3];
		   cout<<"年级:";
		   cin>>a[1];
		   cout<<"导师:";
		   cin>>ss[4];
		   cout<<"专业:";
		   cin>>ss[5];
		   cout<<"工作部门";
		   cin>>ss[6];
		   cout<<"职位";
		   cin>>ss[7];
		   postworker man(ss[0],a[0],ss[1],ss[2],b[0],b[1],b[2],ss[3],a[1],ss[4],ss[5],ss[6],ss[7]);	
		   pp.insert(&man);
		}	
	else
		{   
		   cout<<"部门";
		   cin>>ss[3];
		   cout<<"专业";
		   cin>>ss[4];
		   cout<<"职位";
		   cin>>ss[5];
		   cout<<"部门";
		   cin>>ss[6];
		   cout<<"专业";
		   cin>>ss[7];
		   cout<<"职位";
		   cin>>ss[8];
		   teacher_worker man(ss[0],a[0],ss[1],ss[2],ss[3],ss[4],ss[5],ss[6],ss[7]);
		   pp.insert(&man);
		} 
					   
	


}


⌨️ 快捷键说明

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