C++设计一个简单的学生信息管理系统,使用结构体来存储学生的信息。每个学生信息包含以下字段:学号(字符串)、姓名(字符串)和成绩(浮点数)。对学生信息操作:添加,修改,删除,打印
作者:野牛程序员:2024-11-01 12:59:38 C++阅读 2683
C++设计一个简单的学生信息管理系统,使用结构体来存储学生的信息。每个学生信息包含以下字段:学号(字符串)、姓名(字符串)和成绩(浮点数)。对学生信息操作:添加,修改,删除,打印
C++设计一个简单的学生信息管理系统,使用结构体来存储学生的信息。每个学生信息包含以下字段:学号(字符串)、姓名(字符串)和成绩(浮点数)。对学生信息操作:添加,修改,删除,打印
以下是一个简单的学生信息管理系统的 C++ 示例代码,使用结构体存储学生信息,并提供添加、修改、删除和打印功能:
示例代码:
#include <iostream>
#include <vector>
#include <string>
#include <iomanip> // 用于设置小数精度
using namespace std;
// 定义学生信息结构体
struct Student {
string id; // 学号
string name; // 姓名
float grade; // 成绩
};
// 全局学生列表
vector<Student> students;
// 函数声明
void addStudent();
void modifyStudent();
void deleteStudent();
void printStudents();
int main() {
int choice;
while (true) {
cout << "\n学生信息管理系统\n";
cout << "1. 添加学生\n";
cout << "2. 修改学生信息\n";
cout << "3. 删除学生\n";
cout << "4. 打印所有学生信息\n";
cout << "5. 退出\n";
cout << "请选择操作: ";
cin >> choice;
switch (choice) {
case 1:
addStudent();
break;
case 2:
modifyStudent();
break;
case 3:
deleteStudent();
break;
case 4:
printStudents();
break;
case 5:
cout << "退出系统。\n";
return 0;
default:
cout << "无效的选择,请重新输入。\n";
}
}
}
void addStudent() {
Student student;
cout << "请输入学号: ";
cin >> student.id;
cout << "请输入姓名: ";
cin >> student.name;
cout << "请输入成绩: ";
cin >> student.grade;
students.push_back(student);
cout << "学生信息已添加。\n";
}
void modifyStudent() {
string id;
cout << "请输入要修改的学号: ";
cin >> id;
for (auto &student : students) {
if (student.id == id) {
cout << "当前信息:姓名: " << student.name << ", 成绩: " << student.grade << endl;
cout << "请输入新姓名: ";
cin >> student.name;
cout << "请输入新成绩: ";
cin >> student.grade;
cout << "学生信息已修改。\n";
return;
}
}
cout << "未找到该学号的学生。\n";
}
void deleteStudent() {
string id;
cout << "请输入要删除的学号: ";
cin >> id;
for (auto it = students.begin(); it != students.end(); ++it) {
if (it->id == id) {
students.erase(it);
cout << "学生信息已删除。\n";
return;
}
}
cout << "未找到该学号的学生。\n";
}
void printStudents() {
if (students.empty()) {
cout << "暂无学生信息。\n";
return;
}
cout << fixed << setprecision(2); // 设置成绩输出精度
cout << "\n学号\t\t姓名\t成绩\n";
for (const auto &student : students) {
cout << student.id << "\t" << student.name << "\t" << student.grade << endl;
}
}代码说明:
结构体定义:定义了
Student结构体,用于存储学生的学号、姓名和成绩。全局变量:使用
vector<Student>存储多个学生信息。主菜单:提供添加、修改、删除、打印和退出的选项。
添加学生:通过输入学号、姓名和成绩来添加学生信息。
修改学生信息:根据学号查找学生并修改其信息。
删除学生:根据学号查找并删除学生信息。
打印学生信息:打印所有学生的信息,格式化输出成绩为两位小数。
使用说明:
编译并运行程序后,根据菜单输入相应的选项,可以添加、修改、删除学生信息,并查看当前所有学生的信息。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

