学生成绩管理系统c++
时间: 2023-11-03 20:53:38 浏览: 34
好的,学生成绩管理系统可以分为以下几个模块:
1. 学生信息管理模块:包括学生的姓名、学号、性别、年龄、班级等信息的管理。
2. 课程信息管理模块:包括课程的名称、学分、教师等信息的管理。
3. 成绩录入模块:教师可以录入学生的成绩,并将其保存到数据库中。
4. 成绩查询模块:学生和教师可以查询学生的成绩,并可以按照学号、课程名等进行查询。
5. 数据库管理模块:对学生信息、课程信息和成绩信息进行管理,包括添加、修改、删除等操作。
下面是一个简单的学生成绩管理系统的代码,使用C++语言编写:
```c++
#include <iostream>
#include <string>
#include <vector>
using namespace std;
// 定义学生类
class Student {
public:
string name; // 姓名
string id; // 学号
string sex; // 性别
int age; // 年龄
string clazz; // 班级
};
// 定义课程类
class Course {
public:
string name; // 课程名称
int credit; // 学分
string teacher; // 教师姓名
};
// 定义成绩类
class Score {
public:
string studentId; // 学号
string courseName; // 课程名称
int score; // 成绩
};
// 定义学生管理类
class StudentManager {
public:
// 添加学生
void addStudent(Student student) {
students.push_back(student);
}
// 修改学生信息
void updateStudent(Student student) {
for (int i = 0; i < students.size(); i++) {
if (students[i].id == student.id) {
students[i] = student;
break;
}
}
}
// 删除学生
void deleteStudent(string id) {
for (int i = 0; i < students.size(); i++) {
if (students[i].id == id) {
students.erase(students.begin() + i);
break;
}
}
}
// 根据学号查询学生信息
Student getStudentById(string id) {
for (int i = 0; i < students.size(); i++) {
if (students[i].id == id) {
return students[i];
}
}
}
// 显示所有学生信息
void showAllStudents() {
for (int i = 0; i < students.size(); i++) {
cout << "姓名:" << students[i].name << endl;
cout << "学号:" << students[i].id << endl;
cout << "性别:" << students[i].sex << endl;
cout << "年龄:" << students[i].age << endl;
cout << "班级:" << students[i].clazz << endl;
cout << endl;
}
}
private:
vector<Student> students; // 存储学生信息
};
// 定义课程管理类
class CourseManager {
public:
// 添加课程
void addCourse(Course course) {
courses.push_back(course);
}
// 修改课程信息
void updateCourse(Course course) {
for (int i = 0; i < courses.size(); i++) {
if (courses[i].name == course.name) {
courses[i] = course;
break;
}
}
}
// 删除课程
void deleteCourse(string name) {
for (int i = 0; i < courses.size(); i++) {
if (courses[i].name == name) {
courses.erase(courses.begin() + i);
break;
}
}
}
// 根据课程名称查询课程信息
Course getCourseByName(string name) {
for (int i = 0; i < courses.size(); i++) {
if (courses[i].name == name) {
return courses[i];
}
}
}
// 显示所有课程信息
void showAllCourses() {
for (int i = 0; i < courses.size(); i++) {
cout << "课程名称:" << courses[i].name << endl;
cout << "学分:" << courses[i].credit << endl;
cout << "教师姓名:" << courses[i].teacher << endl;
cout << endl;
}
}
private:
vector<Course> courses; // 存储课程信息
};
// 定义成绩管理类
class ScoreManager {
public:
// 添加成绩
void addScore(Score score) {
scores.push_back(score);
}
// 修改成绩
void updateScore(Score score) {
for (int i = 0; i < scores.size(); i++) {
if (scores[i].studentId == score.studentId && scores[i].courseName == score.courseName) {
scores[i] = score;
break;
}
}
}
// 删除成绩
void deleteScore(string studentId, string courseName) {
for (int i = 0; i < scores.size(); i++) {
if (scores[i].studentId == studentId && scores[i].courseName == courseName) {
scores.erase(scores.begin() + i);
break;
}
}
}
// 根据学号和课程名称查询成绩
Score getScoreByIdAndName(string studentId, string courseName) {
for (int i = 0; i < scores.size(); i++) {
if (scores[i].studentId == studentId && scores[i].courseName == courseName) {
return scores[i];
}
}
}
// 显示所有成绩信息
void showAllScores() {
for (int i = 0; i < scores.size(); i++) {
cout << "学号:" << scores[i].studentId << endl;
cout << "课程名称:" << scores[i].courseName << endl;
cout << "成绩:" << scores[i].score << endl;
cout << endl;
}
}
private:
vector<Score> scores; // 存储成绩信息
};
int main() {
StudentManager studentManager; // 学生管理类实例
CourseManager courseManager; // 课程管理类实例
ScoreManager scoreManager; // 成绩管理类实例
// 添加学生信息
Student student1 = {"张三", "1001", "男", 18, "计算机科学与技术1班"};
Student student2 = {"李四", "1002", "女", 19, "计算机科学与技术2班"};
studentManager.addStudent(student1);
studentManager.addStudent(student2);
// 显示所有学生信息
studentManager.showAllStudents();
// 添加课程信息
Course course1 = {"数据结构", 4, "王老师"};
Course course2 = {"操作系统", 3, "李老师"};
courseManager.addCourse(course1);
courseManager.addCourse(course2);
// 显示所有课程信息
courseManager.showAllCourses();
// 录入成绩
Score score1 = {"1001", "数据结构", 90};
Score score2 = {"1002", "操作系统", 80};
scoreManager.addScore(score1);
scoreManager.addScore(score2);
// 显示所有成绩信息
scoreManager.showAllScores();
return 0;
}
```
以上代码只是一个简单的示例,你可以根据自己的需求进行修改。
相关推荐
![text/x-c++](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)