能够管理各参赛队伍的基本信息(包含参赛队编号,参赛作品名称,参赛学校,赛事类别,参赛者,指导老师);包含增加、删除、修改参赛队伍的信息用c++实现
时间: 2023-07-16 07:13:26 浏览: 91
C语言运动会管理等信息实现
以下是一个简单的 C++ 实现,可以实现管理参赛队伍的基本信息,包括增加、删除和修改参赛队伍的信息。其中,每个参赛队伍的信息都被保存在一个结构体中,代码如下:
```cpp
#include <iostream>
#include <vector>
#include <string>
using namespace std;
// 参赛队伍的结构体
struct Team {
int id; // 参赛队编号
string name; // 参赛作品名称
string school; // 参赛学校
string category; // 赛事类别
vector<string> members; // 参赛者
string teacher; // 指导老师
};
// 存储所有参赛队伍的向量
vector<Team> teams;
// 增加参赛队伍的函数
void addTeam() {
Team team;
cout << "请输入参赛队编号:";
cin >> team.id;
cout << "请输入参赛作品名称:";
cin >> team.name;
cout << "请输入参赛学校:";
cin >> team.school;
cout << "请输入赛事类别:";
cin >> team.category;
cout << "请输入参赛者(输入 end 结束):";
string member;
while (cin >> member && member != "end") {
team.members.push_back(member);
}
cout << "请输入指导老师:";
cin >> team.teacher;
teams.push_back(team);
cout << "参赛队伍添加成功!" << endl;
}
// 删除参赛队伍的函数
void deleteTeam() {
int id;
cout << "请输入要删除的参赛队编号:";
cin >> id;
for (auto it = teams.begin(); it != teams.end(); ++it) {
if (it->id == id) {
teams.erase(it);
cout << "参赛队伍删除成功!" << endl;
return;
}
}
cout << "没有找到对应的参赛队伍!" << endl;
}
// 修改参赛队伍的函数
void modifyTeam() {
int id;
cout << "请输入要修改的参赛队编号:";
cin >> id;
for (auto& team : teams) {
if (team.id == id) {
cout << "请输入要修改的信息类型(1-参赛作品名称,2-参赛学校,3-赛事类别,4-参赛者,5-指导老师):";
int type;
cin >> type;
switch (type) {
case 1: {
cout << "请输入新的参赛作品名称:";
string name;
cin >> name;
team.name = name;
cout << "参赛队伍修改成功!" << endl;
return;
}
case 2: {
cout << "请输入新的参赛学校:";
string school;
cin >> school;
team.school = school;
cout << "参赛队伍修改成功!" << endl;
return;
}
case 3: {
cout << "请输入新的赛事类别:";
string category;
cin >> category;
team.category = category;
cout << "参赛队伍修改成功!" << endl;
return;
}
case 4: {
cout << "请输入新的参赛者(输入 end 结束):";
vector<string> members;
string member;
while (cin >> member && member != "end") {
members.push_back(member);
}
team.members = members;
cout << "参赛队伍修改成功!" << endl;
return;
}
case 5: {
cout << "请输入新的指导老师:";
string teacher;
cin >> teacher;
team.teacher = teacher;
cout << "参赛队伍修改成功!" << endl;
return;
}
default:
cout << "无效的信息类型!" << endl;
return;
}
}
}
cout << "没有找到对应的参赛队伍!" << endl;
}
// 显示所有参赛队伍的信息
void printTeams() {
cout << "参赛队编号\t参赛作品名称\t参赛学校\t赛事类别\t参赛者\t指导老师" << endl;
for (const auto& team : teams) {
cout << team.id << '\t' << team.name << '\t' << team.school << '\t' << team.category << '\t';
for (const auto& member : team.members) {
cout << member << " ";
}
cout << '\t' << team.teacher << endl;
}
}
int main() {
// 主菜单
while (true) {
cout << "请选择操作类型(1-增加参赛队伍,2-删除参赛队伍,3-修改参赛队伍,4-显示所有参赛队伍,0-退出):";
int type;
cin >> type;
switch (type) {
case 1:
addTeam();
break;
case 2:
deleteTeam();
break;
case 3:
modifyTeam();
break;
case 4:
printTeams();
break;
case 0:
return 0;
default:
cout << "无效的操作类型!" << endl;
}
}
}
```
注意,这只是一个简单的实现,实际应用中可能需要更加完善的错误处理、数据存储等功能。
阅读全文