21xrx.com
2024-09-20 01:13:29 Friday
登录
文章检索 我的文章 写文章
C++统计学生信息及成绩
2023-06-25 11:39:47 深夜i     --     --
C++ 统计 学生信息 成绩 计算分数

C++是一种高级编程语言,可以用来编写各种应用程序。其中,统计学生信息及成绩是C++程序设计中常见的一种任务。本文将介绍如何使用C++编写一个简单的程序来完成这项任务。

首先,我们需要定义一个结构体来存储学生的信息及成绩。结构体可以用来表示一个包含多个数据类型的数据类型,其成员可以是整型、字符型、浮点型等。下面是一个示例的定义:


struct student {

  string name;

  int age;

  float height;

  float weight;

  int score[3];

  float average;

};

在上面的定义中,我们定义了一个名为“student”的结构体,它包含了学生的姓名、年龄、身高、体重、三门课程的成绩以及平均成绩等属性。注意,成绩使用数组来保存。

接下来,我们可以定义一个函数来读入学生的信息及成绩。这个函数可以使用C++标准库中的iostream头文件中的cin来实现。具体实现如下:


void input(student &s) {

  cout << "请输入学生姓名:";

  cin >> s.name;

  cout << "请输入学生年龄:";

  cin >> s.age;

  cout << "请输入学生身高(米):";

  cin >> s.height;

  cout << "请输入学生体重(千克):";

  cin >> s.weight;

  cout << "请输入学生成绩1:";

  cin >> s.score[0];

  cout << "请输入学生成绩2:";

  cin >> s.score[1];

  cout << "请输入学生成绩3:";

  cin >> s.score[2];

  s.average = (s.score[0] + s.score[1] + s.score[2]) / 3.0f;

}

在上述函数中,我们使用了C++标准库中的cout和cin分别输出提示信息和读入用户输入,然后对输入的数据进行存储和计算,最后将平均成绩保存在对应的结构体成员中。

最后,我们可以编写主函数来调用上述函数并输出结果。具体代码如下:


int main() {

  int n;

  cout << "请输入学生人数:";

  cin >> n;

  student *students = new student[n];

  for (int i = 0; i < n; ++i) {

    cout << "请输入第" << i + 1 << "个学生的信息:" << endl;

    input(students[i]);

  }

  cout << "以下是所有学生的信息及成绩:" << endl;

  for (int i = 0; i < n; ++i) {

    cout << "姓名:" << students[i].name << endl;

    cout << "年龄:" << students[i].age << endl;

    cout << "身高:" << students[i].height << "米" << endl;

    cout << "体重:" << students[i].weight << "千克" << endl;

    cout << "成绩1:" << students[i].score[0] << endl;

    cout << "成绩2:" << students[i].score[1] << endl;

    cout << "成绩3:" << students[i].score[2] << endl;

    cout << "平均成绩:" << students[i].average << endl;

  }

  delete[] students;

  return 0;

}

在上述代码中,我们首先读入学生人数,然后使用new运算符动态分配一个大小为n的结构体数组,并循环调用input函数读入每个学生的信息及成绩。最后,我们循环遍历结构体数组并输出结果,最终使用delete运算符释放动态分配的内存。

至此,我们已经介绍了如何使用C++编写一个统计学生信息及成绩的程序。这个程序虽然简单,但已经具备了基本的数据结构、输入输出和内存管理等功能,可以帮助初学者更好地理解C++编程的基本概念和用法。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复