21xrx.com
2025-07-06 13:49:44 Sunday
文章检索 我的文章 写文章
C++实现学生类,记录姓名和数学、物理、英语三科成绩
2023-07-04 01:06:51 深夜i     13     0
C++ 学生类 姓名 数学 物理 英语成绩

C++是一种面向对象编程语言,它在计算机编程领域中广泛应用。在C++中,我们可以使用类来表示一个个体的属性和行为。在学生管理系统中,学生是一个重要的个体,我们经常需要对学生进行管理和记录。因此,利用C++语言来实现一个学生类是非常必要的。

在学生类中,我们需要记录学生的名字以及数学、物理、英语三科的成绩。为了实现这个类,我们需要首先定义数据成员和成员函数。

数据成员指的是在类中定义的变量,用来保存某个对象的状态。在学生类中,我们需要定义以下数据成员:

- 姓名:用string类型存储学生的名字。

- 数学、物理、英语三科成绩:分别用int类型存储学生在三门科目中的成绩。

成员函数指的是在类中定义的函数,用来描述某个对象的行为。在学生类中,我们需要定义以下成员函数:

- 构造函数:用于初始化学生对象的数据成员,可以将姓名和三科成绩作为参数传入。

- 读取成绩函数:用于读取学生在某一科的成绩,可以使用switch语句根据用户输入的科目来返回相应的成绩。

- 计算总分函数:用于计算学生的总分,将数学、物理、英语三个成绩相加后返回总分。

- 输出函数:用于将学生的姓名和三科成绩输出到屏幕上,可以使用cout语句实现。

下面是一个简单的学生类的实现:

#include <iostream>
#include <string>
using namespace std;
class Student {
private:
  string name;
  int math_score;
  int physics_score;
  int english_score;
public:
  Student(string n, int m, int p, int e)
    name = n;
    math_score = m;
    physics_score = p;
    english_score = e;
  
  int GetScore(string subject) {
    if (subject == "math")
      return math_score;
    
    else if (subject == "physics")
      return physics_score;
    
    else if (subject == "english")
      return english_score;
    
    else
      return -1;
    
  }
  int GetTotalScore() {
    return math_score + physics_score + english_score;
  }
  void ShowInfo()
    cout << "Name: " << name << endl;
    cout << "Math score: " << math_score << endl;
    cout << "Physics score: " << physics_score << endl;
    cout << "English score: " << english_score << endl;
  
};
int main() {
  Student s("Tom", 80, 75, 90);
  s.ShowInfo();
  cout << "Total score: " << s.GetTotalScore() << endl;
  cout << "Math score: " << s.GetScore("math") << endl;
  return 0;
}

通过这个实现,我们可以创建一个名为Tom的学生对象,记录他的数学成绩为80分,物理成绩为75分,英语成绩为90分。我们可以使用ShowInfo()函数将这些信息输出到屏幕上。同时,我们可以使用GetTotalScore()函数计算Tom的总分,并使用GetScore()函数读取他在数学科目上的成绩。

在日常生活和学习中,我们经常需要记录学生的成绩信息。C++的面向对象编程语言让我们可以轻松地创建一个学生类,对学生的姓名和成绩进行管理和记录。通过这种方式,我们能够更好地理解C++语言的特点和优势,进一步提高我们的编程水平和技能。

  
  
下一篇: C++错误处理

评论区