用数组增删改查学生管理系统

#include<iostream>
using namespace std;
class Stu
{
public:
	string Name;//姓名
	int Num;//学号
	int Age;//年龄
	float Grade;//成绩
public:
	Stu() {};	
	~Stu(){};
	Stu(string name, int num, int age, float grade){
		Name = name; Num = num; Age = age; Grade = grade;}
	//void AddStu(void);//添加学生信息
	//void InitStu(void);//修改学生信息
	void Show(void)//显示学生信息
	{
		cout << "姓名:" << Name << "\t"<< "学号:" << Num<<"\t"
			<< "年龄:" << Age << "\t"<< "成绩:" << Grade << endl;
	}
};
void ShowWenu()//菜单栏
{
	//system("cls");
	cout << " \t\******************************" << endl;
	cout << "\t\t----显示菜单----\t\t" << endl;
	cout << " \t******************************" << endl;
	cout << "\t\t1.添加学生信息\t\t" << endl;
	cout << "\t\t2.修改学生信息\t\t" << endl;
	cout << "\t\t3.删除学生信息\t\t" << endl;
	cout << "\t\t4.显示学生信息\t\t" << endl;
	cout << "\t\t5.查找学生信息\t\t" << endl;
	cout << "\t\t6.退出\t\t" << endl;
	cout << " \t------------------------------" << endl;
}
Stu AddStu()//增加学生信息
{
	//system("cls");
	Stu s;
	cout << "\t\t----增加学生----\t\t" << endl;
		cout << "输入学生姓名:" << endl;
		cin >> s.Name;
		cout << "输入学号:" << endl;
		cin >>s.Num;
		cout << "输入年龄:" << endl;
		cin >> s.Age;
		cout << "输入成绩:" << endl;
		cin>>s.Grade;
		return s;
}
Stu InitStu()//修改学生信息
{
	//system("cls");
	Stu s;
	cout << "\t\t----修改学生----\t\t" << endl;
	cout << "输入学生姓名:" << endl;
	cin >> s.Name;
	cout << "输入学号:" << endl;
	cin >> s.Num;
	cout << "输入年龄:" << endl;
	cin >> s.Age;
	cout << "输入成绩:" << endl;
	cin >> s.Grade;
	return s;
}
int main()
{
	Stu s[100];
	int i=1;//学生总人数
	int select = 0;
	while (true)
	{
		ShowWenu();//显示菜单
		cin >> select;
		switch (select)
		{
		case 1:
		{
			s[i] = AddStu();
			i++;
		}
			break;
		case 2:
		{
			if (i == 1)
				cout << "已无学生信息,请添加新学生信息" << endl;
			else
			{
				cout << "输入要修改的学号:" << endl;
				int init_num;
				cin >> init_num;
				int init_flag = 0;
				for (int j = 1; j < i; j++)
				{
					if (init_num == s[j].Num)
					{
						s[j] = InitStu();
						init_flag = 1;
					}
				}
				if (init_flag == 0)
					cout << "未查到此人" << endl;
			}
		}
			break;
		case 3:
		{
			if (i == 1)
				cout << "已无学生信息,请添加新学生信息" << endl;
			else
			{
				cout << "输入要删除的学号:" << endl;
				int del_num;
				cin >> del_num;
				int del_flag = 0;
				for (int j = 1; j < i; j++)
				{
					if (del_num == s[j].Num)
					{
						for (int m = j; m < i; m++)
						{
							s[m] = s[m+1];
						}
						del_flag = 1;
						cout << "删除成功" << endl;
						i--;
					}
				}
				if (del_flag == 0)
					cout << "未查到此人" << endl;
			}
		}
			break;
		case 4:
		{
			if (i == 1)
				cout << "已无学生信息,请添加新学生信息" << endl;
			else
			{
				for (int j = 1; j < i; j++)
					s[j].Show();
			}
		}
			break;
		case 5:
		{
			if (i == 1)
				cout << "已无学生信息,请添加新学生信息" << endl;
			else
			{
				cout << "输入要查找的学号:" << endl;
				int find_num;
				cin >> find_num;
				int find_flag = 0;
				for (int j = 1; j < i; j++)
				{
					if (find_num == s[j].Num)
					{
						find_flag = 1;
						s[j].Show();
					}
				}
				if (find_flag == 0)
					cout << "未查到此人" << endl;
			}
		}
			break;
		default:
		{
			cout << "退出" << endl;
			system("pause");
			exit(0);
		}
		}
	}
	return 0;
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值