学生管理系统

#include <bits/stdc++.h>
#include <windows.h>
using namespace  std;
struct Student{
    int id;//学号
    string name;//姓名
    int age;//年龄
    int grade;//班级
}s;
void zhujm(){
    cout<<"欢迎来到学生管理系统!!"<<endl;
    cout<<"请你做出以下选择:"<<endl;
    cout<<"1.新建"<<endl;
    cout<<"2.查找"<<endl;
    cout<<"3.修改"<<endl;
    cout<<"4.删除"<<endl;
    cout<<"5.退出"<<endl;
}
//新增学生信息
vector<Student> insert(vector<Student> a){
    if(s.id==0){
        s.id=1000;
    }else{
        s.id+=1;
    }
    cout<<"姓名,年龄,年级"<<endl;
    cin>>s.name>>s.age>>s.grade;
    a.push_back(s);
    return a;
}
vector<Student> search(vector<Student> a){
     system("cls");
     while(1){
     	bool b=false;
        int number=0;
        int _id=0,_grade=0,_age;
        string _name;
        cout<<"请选择你的查找方式:"<<endl;
        cout<<"1.学号查找"<<endl;
        cout<<"2.姓名查找(模糊)"<<endl;
        cout<<"3.年级查找"<<endl;
        cout<<"4.年龄查找"<<endl;
        cout<<"5.返回主界面"<<endl;
        cin>>number;
        if(number==5){
            system("cls");
            break;
        }
        switch(number){
            case 1:{
                system("cls");
                cout<<"请输入你的学号:"<<endl;
                cin>>_id;
                for(int i=0;i<a.size();i++){
                    if(_id==a[i].id){
                    	b=true;
                        cout<<"信息如下"<<endl;
                        cout<<"学号:"<<a[i].id<<endl;
                        cout<<"姓名:"<<a[i].name<<endl;
                        cout<<"年龄:"<<a[i].age<<endl;
                        cout<<"年级:"<<a[i].grade<<endl;
                        cout<<"_________________________"<<endl;   
                    }
                  
                }  
				if(!b){
                    	cout<<"没该生信息"<<endl;
					}
                break;
            }
            case 2:{
                system("cls");
                cout<<"请输入你的姓名:"<<endl;
                cin>>_name;
                for(int i=0;i<a.size();i++){
                    if(a[i].name.find(_name)!=string::npos){
                    	b=true;
                        cout<<"信息如下"<<endl;
                        cout<<"学号:"<<a[i].id<<endl;
                        cout<<"姓名:"<<a[i].name<<endl;
                        cout<<"年龄:"<<a[i].age<<endl;
                        cout<<"年级:"<<a[i].grade<<endl;
                        cout<<"_________________________"<<endl;   
                    }
                    
                }
                if(!b){
                    	cout<<"没该生信息"<<endl;
					}
                break;
            }
            case 3:{
                system("cls");
                cout<<"请输入你的年级:"<<endl;
                cin>>_grade;
                for(int i=0;i<a.size();i++){
                    if(_grade==a[i].grade){
                    	b=true;
                        cout<<"信息如下"<<endl;
                        cout<<"学号:"<<a[i].id<<endl;
                        cout<<"姓名:"<<a[i].name<<endl;
                        cout<<"年龄:"<<a[i].age<<endl;
                        cout<<"年级:"<<a[i].grade<<endl;
                        cout<<"_________________________"<<endl;   
                    }
                    
                }
                if(!b){
                    	cout<<"没该生信息"<<endl;
					}
                break;
            }
            case 4:{
                system("cls");
                cout<<"请输入你的年龄:"<<endl;
                cin>>_age;
                for(int i=0;i<a.size();i++){
                    if(_age==a[i].age){
                    	b=true;
                        cout<<"信息如下"<<endl;
                        cout<<"学号:"<<a[i].id<<endl;
                        cout<<"姓名:"<<a[i].name<<endl;
                        cout<<"年龄:"<<a[i].age<<endl;
                        cout<<"年级:"<<a[i].grade<<endl;
                        cout<<"_________________________"<<endl;   
                    }
                    
                }
                if(!b){
                    	cout<<"没该生信息"<<endl;
					}
                break;
            }
        }
     }
     return a;
}
vector<Student> revise(vector<Student> a){
	system("cls");
	while(1){
		int _number=0,id_=0;
		string name_;
		bool b=false;
		cout<<"请输入你要修改的学生信息:"<<endl;
        cout<<"1.id修改"<<endl;
        cout<<"2.返回主界面"<<endl;
        cin>>_number;
        if(_number==2){
            system("cls");
            break;
        }
		switch(_number){
			case 1:{
				cout<<"输入学生id:"<<endl;
				cin>>id_;
				for(int i=0;i<a.size();i++){
                    if(id_==a[i].id){
                    	b=true;
                        cout<<"信息如下"<<endl;
                        cout<<"学号:"<<a[i].id<<endl;
                        cout<<"姓名:"<<a[i].name<<endl;
                        cout<<"年龄:"<<a[i].age<<endl;
                        cout<<"年级:"<<a[i].grade<<endl;
                        cout<<"_________________________"<<endl;  
						cout<<"输入你要修改的选项"<<endl; 
		                cout<<"1.学生姓名:"<<endl;
		                cout<<"1.学生年龄:"<<endl;
		                cout<<"1.学生年级:"<<endl;
		                int n;
		                cin>>n;
		                switch(n){
		                	case 1:{
		                		cout<<"输入修改姓名:"<<endl;
		                		cin>>name_;
		                		a[i].name=name_;
		                		cout<<"修改成功!"<<endl;
		                		Sleep(1000);
		                		system("cls");
								break;
							}
							case 2:{
								int age_=0; 
		                		cout<<"输入修改年龄:"<<endl;
		                		cin>>age_;
		                		a[i].age=age_;
		                		cout<<"修改成功!"<<endl;
		                		Sleep(1000);
		                		system("cls");
								break;
							}
							case 3:{
								int grade_=0;
		                		cout<<"输入修改年级:"<<endl;
		                		cin>>grade_;
		                		a[i].grade=grade_;
		                		cout<<"修改成功!"<<endl;
		                		Sleep(1000);
		                		system("cls");
								break;
							}
							default:cout<<"没有该选项"<<endl;
						} 
                    }
                }
                if(!b){
                	cout<<"没该生信息"<<endl;
				}
                
				break;
			} 
		}
	}
	return a;
}
vector<Student> del(vector<Student> a){
	system("cls");
	while(1){
		cout<<"请输入你要删除的学生信息:"<<endl;
        cout<<"1.id删除"<<endl;
        cout<<"2.返回主界面"<<endl;
        int m;
		cin>>m;
		if(m==2){
            system("cls");
            break;
        }
		switch(m){
			case 1:{
				int id_1;
				cout<<"输入学生id:"<<endl;
				cin>>id_1;
				for(int i=0;i<a.size();i++){
                    if(id_1==a[i].id){
                        a.erase(a.begin()+1);
                    }
                    cout<<"删除成功!"<<endl;
                    break;
				}
			}
				case 2:{
						break;
				}
     				default:cout<<"没有该选项"<<endl;	
				break;	
        	}
				
		}
	return a;
} 
	
	

int main(){
    vector<Student> a;
    while(1){
        zhujm();
        int n;
        cin>>n;
        if(n==5){
            cout<<"再见!"<<endl;
            break;
        }
        switch(n){
            case 1:{
                a=insert(a);
                cout<<"建立成功!"<<endl;
                Sleep(1000);
                system("cls");
                break;
            }
            case 2:{
                a=search(a);
                break;
            }
			case 3:{
				a=revise(a);
				break;
			}
			case 4:{
				a=del(a);
				break;
			}     
        }
    }
    return 0;
}

  

posted @ 2023-12-16 10:02  fushuxuan1  阅读(26)  评论(0)    收藏  举报