C++实现学生管理系统攻略
1. 确定系统功能
学生管理系统有很多功能,有录入学生信息、显示学生信息、修改学生信息、删除学生信息等。确定系统功能是实现该系统的第一步。本系统以录入、显示、修改、删除学生信息为功能点展开。
2. 设计学生类
学生信息的属性有:学号、姓名、性别、出生年月、成绩。因此,我们可以设计一个学生类 Student
,并在其中定义相应的属性和方法。
class Student
{
public:
string id; // 学号
string name; // 姓名
string sex; // 性别
string birth; // 生日
float score; // 成绩
void input(); // 录入
void output(); // 显示
void modify(); // 修改
};
在类中定义了五个属性,以及三个方法:录入、显示和修改。
3. 实现学生类的方法
3.1 录入
void Student::input()
{
cout << "请输入学号:" << endl;
cin >> id;
cout << "请输入姓名:" << endl;
cin >> name;
cout << "请输入性别:" << endl;
cin >> sex;
cout << "请输入出生年月:" << endl;
cin >> birth;
cout << "请输入成绩:" << endl;
cin >> score;
}
3.2 显示
void Student::output()
{
cout << "学号:" << id << endl;
cout << "姓名:" << name << endl;
cout << "性别:" << sex << endl;
cout << "出生年月:" << birth << endl;
cout << "成绩:" << score << endl;
}
3.3 修改
void Student::modify()
{
cout << "请选择要修改的属性:" << endl;
cout << "1.学号" << endl;
cout << "2.姓名" << endl;
cout << "3.性别" << endl;
cout << "4.出生年月" << endl;
cout << "5.成绩" << endl;
int op;
cin >> op;
switch (op)
{
case 1: // 修改学号
cout << "请输入新的学号:" << endl;
cin >> id;
break;
case 2: // 修改姓名
cout << "请输入新的姓名:" << endl;
cin >> name;
break;
case 3: // 修改性别
cout << "请输入新的性别:" << endl;
cin >> sex;
break;
case 4: // 修改出生年月
cout << "请输入新的出生年月:" << endl;
cin >> birth;
break;
case 5: // 修改成绩
cout << "请输入新的成绩:" << endl;
cin >> score;
break;
default:
cout << "输入有误,请重新输入" << endl;
break;
}
}
4. 构建学生管理系统
在实现完学生类的方法后,我们可以通过 main()
函数来构建学生管理系统。在系统中,我们可以通过按键选择执行不同的操作。
int main()
{
vector<Student> stuVec;
bool flag = true;
while (flag)
{
cout << "请选择要执行的操作:" << endl;
cout << "1.录入学生信息" << endl;
cout << "2.显示学生信息" << endl;
cout << "3.修改学生信息" << endl;
cout << "4.删除学生信息" << endl;
cout << "5.退出" << endl;
int op;
cin >> op;
switch (op)
{
case 1: // 录入学生信息
{
Student stu;
stu.input();
stuVec.push_back(stu);
}
break;
case 2: // 显示学生信息
for (unsigned int i = 0; i < stuVec.size(); i++)
{
stuVec[i].output();
}
break;
case 3: // 修改学生信息
{
string id;
cout << "请输入要修改的学生学号:" << endl;
cin >> id;
bool modified = false;
for (unsigned int i = 0; i < stuVec.size(); i++)
{
if (stuVec[i].id == id)
{
stuVec[i].modify();
modified = true;
break;
}
}
if (!modified)
{
cout << "未找到该学生信息" << endl;
}
}
break;
case 4: // 删除学生信息
{
string id;
cout << "请输入要删除的学生学号:" << endl;
cin >> id;
bool deleted = false;
for (vector<Student>::iterator iter = stuVec.begin(); iter != stuVec.end(); iter++)
{
if (iter->id == id)
{
stuVec.erase(iter);
deleted = true;
break;
}
}
if (!deleted)
{
cout << "未找到该学生信息" << endl;
}
}
break;
case 5: // 退出
flag = false;
break;
default:
cout << "输入有误,请重新输入" << endl;
break;
}
}
return 0;
}
在主函数中,我们定义了一个 vector 存储所有录入的学生信息,并且在不同的按键操作下执行相应的功能。
5. 示例说明
5.1 录入学生信息
运行程序,在主菜单选择“1.录入学生信息”,在按照提示输入信息后,将会把信息读入系统,并且返回主菜单。
请选择要执行的操作:
1.录入学生信息
2.显示学生信息
3.修改学生信息
4.删除学生信息
5.退出
1
请输入学号:
1001
请输入姓名:
Tom
请输入性别:
男
请输入出生年月:
1998-01-01
请输入成绩:
98
请选择要执行的操作:
1.录入学生信息
2.显示学生信息
3.修改学生信息
4.删除学生信息
5.退出
5
5.2 显示学生信息
运行程序,在主菜单选择“1.录入学生信息”,然后再在主菜单选择“2.显示学生信息”。系统会遍历 vector,将所有学生信息全部显示出来。
请选择要执行的操作:
1.录入学生信息
2.显示学生信息
3.修改学生信息
4.删除学生信息
5.退出
1
请输入学号:
1001
请输入姓名:
Tom
请输入性别:
男
请输入出生年月:
1998-01-01
请输入成绩:
98
请选择要执行的操作:
1.录入学生信息
2.显示学生信息
3.修改学生信息
4.删除学生信息
5.退出
2
学号:1001
姓名:Tom
性别:男
出生年月:1998-01-01
成绩:98
请选择要执行的操作:
1.录入学生信息
2.显示学生信息
3.修改学生信息
4.删除学生信息
5.退出
5
5.3 修改学生信息
运行程序,在主菜单选择“1.录入学生信息”,然后再在主菜单选择“3.修改学生信息”。在给定学生学号进行修改时,会提示要修改的属性,我们可以输入数字1-5选择要修改的属性。修改完成后会返回主菜单,而且能在“2.显示学生信息”中看到修改后的结果。
请选择要执行的操作:
1.录入学生信息
2.显示学生信息
3.修改学生信息
4.删除学生信息
5.退出
1
请输入学号:
1001
请输入姓名:
Tom
请输入性别:
男
请输入出生年月:
1998-01-01
请输入成绩:
98
请选择要执行的操作:
1.录入学生信息
2.显示学生信息
3.修改学生信息
4.删除学生信息
5.退出
3
请输入要修改的学生学号:
1001
请选择要修改的属性:
1.学号
2.姓名
3.性别
4.出生年月
5.成绩
5
请输入新的成绩:
99
请选择要执行的操作:
1.录入学生信息
2.显示学生信息
3.修改学生信息
4.删除学生信息
5.退出
2
学号:1001
姓名:Tom
性别:男
出生年月:1998-01-01
成绩:99
请选择要执行的操作:
1.录入学生信息
2.显示学生信息
3.修改学生信息
4.删除学生信息
5.退出
5
6. 总结
通过该攻略,我们了解到如何在 C++ 中实现一个简单的学生管理系统。该系统包含了学生类的设计、类方法的实现以及主函数的构建。我们还通过简单的示例说明了如何使用该系统实现录入、显示和修改学生信息等功能。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C++实现简单的学生管理系统 - Python技术站