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

📄 成绩管理.txt

📁 c语言编的学生信息管理系统
💻 TXT
📖 第 1 页 / 共 2 页
字号:
			}
			}
		   }
		   //*******************************************************
		   void rank(student *p,int Cl)//通过比较来排名,查看某班的成绩
		   {
			   int k1,k2,k3,k4,k5,k6,k8;char *k7;
				lank(p,Cl);             
				for(int i=0;i<N;i++)
				{
					for(int j=i+1;j<N;j++)
					{
					if(p[i].getcl()==Cl&&p[j].getcl()==Cl&&sum(p[i])<=sum(p[j]))//用学号来排序后,通过总分来比较排名
					{
                        k1=p[i].getcl();p[i].putcl(p[j].getcl());p[j].putcl(k1);
                        k7=new char[strlen(p[i].getna())+1];
		                strcpy(k7,p[i].getna());p[i].putna(p[j].getna());p[j].putna(k7);
		                k2=p[i].getnu();p[i].putnu(p[j].getnu());p[j].putnu(k2);
		                k3=p[i].getch();p[i].putch(p[j].getch());p[j].putch(k3);
		                k4=p[i].geten();p[i].puten(p[j].geten());p[j].puten(k4);
		                k5=p[i].getma();p[i].putma(p[j].getma());p[j].putma(k5);
		                k6=p[i].getco();p[i].putco(p[j].getco());p[j].putco(k6);                         
					}
					else continue;
					}				
				}	
				k8=find(p,Cl);
				if(k8==N) cout<<endl<<"没有这个班:"<<endl;
				else
				{
					cout<<"名次"<<setw(6)<<"班级"<<setw(8)<<"学号"<<setw(8)<<"姓名"<<setw(10)
					    <<"语文"<<setw(9)<<"英语"<<setw(10)<<"数学"<<setw(8)                       
					    <<"电脑"<<setw(8)<<"总分"<<setw(9)<<"平均分"<<endl;                       
				int j1=0;
				    for(i=0;i<N;i++)//返回通过总分排序后的学生成绩					
				    if(p[i].getcl()==Cl)
				  {    
		             int A1;
	                 float A2;
					 j1++;
		             A1=sum(p[i]);A2=float(A1)/4;cout<<j1<<setw(8);
                     p[i].putout();cout<<setw(7)<<A1<<setw(9)<<A2<<endl;		             
				  }	
		   }}
		   	//888888888888888888888888888888888888888888888888888888888888
		void fun(student *pupil)
		{
		   for(int j=0;;j++)//对系统的操作
				{
					cout<<endl<<"查询成绩请输入“2”;修改成绩请输入“3”;退出请按其它键;"<<endl;
                    int p3,p4;
					char p2[10],a0[3];
					cin>>a0;
				cout<<"*****************************************************************************"<<endl;			
				 if(strcmp(a0,"3")==0)//修改成绩
					{
                       for(int i=0;;i++)
					   {
  					     cout<<endl<<endl<<"请输入你的班级:";cin>>p3;
					     cout<<"请输入你的学号:";cin>>p4;
					     cout<<"请输入你的名字:";cin>>p2;
					     change(pupil,p3,p4,p2);
						 cout<<endl<<"还需要修改吗,需要请输入“Y”;否则按其它键:";
						 char b0[3];
						 cin>>b0;
						 if(strcmp(b0,"Y")==0||strcmp(b0,"y")==0) continue;
						 else break;
					   }
                 cout<<"*****************************************************************************";
					} 
					
					else if(strcmp(a0,"2")==0)//查询成绩
					{
			        	for(int i=0;;i++)
						{
							   cout<<endl<<"按班级和姓名查请按1,按班级和学号查按2,   按姓名和学号查按3"<<endl
				                   <<"查某一班的成绩请按4, 查某科的平均分请按5, 查排名按6:"<<endl;
                               int E2,E3,E4;				               
					            char E5[10];
					             cin>>E2;
					           switch(E2)
							   {
					              case 1:for(i=0;;i++)
										 {
									      cout<<endl<<"请输入班级:";cin>>E4;
						                  cout<<"请输入姓名:";cin>>E5;                                       						               
									      search(pupil,E4,E5);
										  cout<<endl<<"你还要查询吗?要按‘Y’,否则按其它键:";
										  char t3[3];cin>>t3;
										  if(strcmp(t3,"Y")==0||strcmp(t3,"y")==0) continue;
                                           else break;
										  }
										  break;
					              case 2:for(i=0;;i++)
										 {
									       cout<<endl<<"请输入班级:";cin>>E4;
						                   cout<<"请输入学号:";cin>>E3;						               
						                   search(pupil,E4,E3);	
										   cout<<endl<<"你还要查询吗?要按‘Y’,否则按其它键:";
											  char t2[3];cin>>t2;
											  if(strcmp(t2,"Y")==0||strcmp(t2,"y")==0) continue;
                                              else break;
										  }
						                   break;
					               case 3:for(i=0;;i++)
										  {
											  cout<<endl<<"请输入学号:";cin>>E3;
						                      cout<<"请输入姓名:";cin>>E5;
						                      search(pupil,E5,E3);
											  cout<<endl<<"你还要查询吗?要按‘Y’,否则按其它键:";
											  char t1[3];cin>>t1;
											  if(strcmp(t1,"Y")==0||strcmp(t1,"y")==0) continue;
                                              else break;
										  }
						                      break;
					                case 4:for(i=0;;i++)
										   {
										   cout<<endl<<"请输入班级:";cin>>E3;					 						                   
						                    search(pupil,E3);
											cout<<endl<<"你还要查询班级成绩吗?要请按‘Y’,否则按其它键:";
												char m1[3];
											cin>>m1;
											if(strcmp(m1,"Y")==0||strcmp(m1,"y")==0) continue;
											else break;
										   }
						                      break;
									case 5: for(i=0;;i++)
											   {  
					                                cout<<endl<<"请输入你要查找的班和科目:"<<endl<<endl;
					                                char h1[10];int h2;
				                                    cout<<"请输入科目:";cin>>h1;
													cout<<"请输入班级:";cin>>h2;
													double a3=average(pupil,h1,h2);
													if(a3==0) cout<<endl<<"没有你要查找的内容!"<<endl;
													else
													{cout<<h1<<"的平均分为:"<<a3<<endl;}
					                                cout<<endl<<"还要查科目平均分吗?,如果还要请输'Y'否则按其他键:"<<endl;
				                                  	char h3[3];
					                                cin>>h3;
					                                if(strcmp(h3,"Y")==0||strcmp(h3,"y")==0)continue;
					                                else break;
											}		
											break;
									case 6:for(i=0;;i++)
										   {
										      cout<<endl<<"请输入要查的班级:";											  
				                              int u0;
				                              cin>>u0;											  
				                             rank(pupil,u0);
											  cout<<endl<<"你要继续查看排名吗?要按‘Y’,否则按其它键:";
											  char u1[3];
											  cin>>u1;
											  if(strcmp(u1,"Y")==0||strcmp(u1,"y")==0) continue;
											  else break;
											}
										break;
											}						   
							   cout<<endl<<"你还要用其他方式查询吗?,要请输入“Y”,否则按其它键:";
							   char b2[3];
							   cin>>b2;
							   if(strcmp(b2,"Y")==0||strcmp(b2,"y")==0) 
							   {cout<<"*****************************************************************************";
							   continue;}
							   else  break;
							   }
						}
					else break;
					cout<<endl<<endl<<"你还要继续操作吗,要请输入'Y',否则请输其它键:";
					char b1[3];
					cin>>b1;
					if(strcmp(b1,"Y")==0||strcmp(b1,"y")==0) {
						cout<<"*****************************************************************************"<<endl;
						continue;}
					else break;
					}}
	 	   //***************************************************
               void main()
			 {  cout<<"       **************************************************************"<<endl;
			   cout<<"            欢                迎                使               用"<<endl;
			   cout<<endl;
			   cout<<"                    设计者:         XXX       "<<endl;
			    cout<<"       **************************************************************"<<endl;
				cout<<endl<<endl<<"请输入你需要的人数空间:";
				cin>>N;
                student *pupil=new student[N+10];//用动态数组自己设空间				
				char (*Name)[10]=new char[N+10][10];//用动态数组自己设空间
				int *CL=new int[N+10],*NU=new int[N+10],*CH=new int[N+10],*EN=new int[N+10],*MA=new int[N+10],*CO=new int[N+10];
				for(int i=0;i<N;i++)//成绩录入
				{
				cout<<endl<<endl<<"第"<<i+1<<"位学生:"<<endl;
				cout<<"请输入班级:";cin>>CL[i];
				cout<<"请输入学号:";cin>>NU[i];
				cout<<"请输入姓名:";cin>>Name[i];
				cout<<endl<<"请输入语文成绩:";cin>>CH[i];
				cout<<"请输入英语成绩:";cin>>EN[i];
				cout<<"请输入数学成绩:";cin>>MA[i];
				cout<<"请输入电脑成绩:";cin>>CO[i];
				pupil[i].putin(CL[i],NU[i],Name[i],CH[i],EN[i],MA[i],CO[i]);}
				cout<<endl<<endl;
				cout<<"****************************************************************************";
				cout<<endl;
				cout<<"添加和删除请输入“Y”;否则按其他键:";
					char u[3];
					cin>>u;				
				//888888888888888888888888888888888888888888888888888888888888888						
				for(i=0;;i++)
				{
				if(strcmp(u,"Y")==0||strcmp(u,"y")==0)//添加和删除
				{
					char u0[3];
					cout<<"添加“1”;删除“2”:";
					cin>>u0;
					if(strcmp(u0,"1")==0)
					{
						int u1;
						cout<<"请输入你要添加的人数:";
						cin>>u1;
						N=N+u1;
						for(i=u1;i>0;i--)
						{
							cout<<endl<<endl<<"第"<<N-i+1<<"位学生:"<<endl;
				            cout<<"请输入班级:";cin>>CL[N-i];
				            cout<<"请输入学号:";cin>>NU[N-i];
				            cout<<"请输入姓名:";cin>>Name[N-i];
				            cout<<endl<<"请输入语文成绩:";cin>>CH[N-i];
				            cout<<"请输入英语成绩:";cin>>EN[N-i];
				            cout<<"请输入数学成绩:";cin>>MA[N-i];
				            cout<<"请输入电脑成绩:";cin>>CO[N-i];
				            pupil[N-i].putin(CL[N-i],NU[N-i],Name[N-i],CH[N-i],EN[N-i],MA[N-i],CO[N-i]);}
						cout<<endl<<endl;
				}  
				else if(strcmp(u0,"2")==0)
				{
					cout<<"请输入删除人数:";
                    int u2,u3,u4,u5;
						int k1,k2,k3,k4,k5,k6;char *k7;	
					cin>>u2;
					for(i=0;i<u2;i++)
					{
					cout<<"请输入第"<<i+1<<"个删除的人的班级:";
					cin>>u3;
                    cout<<"请输入第"<<i+1<<"个删除的人的学号:";
					cin>>u4;					//查某班级的成绩,是按学号顺序排
        u5=find(pupil,u3,u4);
				lank(pupil,u3);
		k1=pupil[u5].getcl();pupil[u5].putcl(pupil[N-1].getcl());pupil[N-1].putcl(k1);
        k7=new char[strlen(pupil[u5].getna())+1];
		strcpy(k7,pupil[u5].getna());pupil[u5].putna(pupil[N-1].getna());pupil[N-1].putna(k7);
		k2=pupil[u5].getnu();pupil[u5].putnu(pupil[N-1].getnu());pupil[N-1].putnu(k2);
		k3=pupil[u5].getch();pupil[u5].putch(pupil[N-1].getch());pupil[N-1].putch(k3);
		k4=pupil[u5].geten();pupil[u5].puten(pupil[N-1].geten());pupil[N-1].puten(k4);
		k5=pupil[u5].getma();pupil[u5].putma(pupil[N-1].getma());pupil[N-1].putma(k5);
		k6=pupil[u5].getco();pupil[u5].putco(pupil[N-1].getco());pupil[N-1].putco(k6);
		N=N-1;}}}
				cout<<"如果还要添跟删请输入“Y”;";
				char u7[2];
				cin>>u7;
				if(strcmp(u7,"Y")==0||strcmp(u7,"y")==0)continue;
				else fun(pupil);break;
					}
  //88888888888888888888888888888888888888888888888888888
				   fun(pupil);
			   //88888888888888888888888888888888888888888888888888888888888888
					delete[] Name;
                    delete[] CL;
					delete[] NU;
					delete[] CH;
					delete[] EN;
					delete[] MA;
					delete[] CO;
			}
                
				

⌨️ 快捷键说明

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