21xrx.com
2025-03-27 23:35:59 Thursday
文章检索 我的文章 写文章
C++实验二答案
2023-07-04 21:51:55 深夜i     7     0
C++ 实验二 答案 编程 数据结构

本文将为大家介绍C++实验二的答案。下面我们将分别从实验题目以及其代码实现方面进行讲解。

一、实验题目

1. 设计一个学生类,包含以下数据成员:姓名、年龄、学号、英语成绩、数学成绩。设计一个构造函数,使得可以用输入参数初始化成员变量。再设计一个函数,用于计算学生的总分和平均分。最后在主函数中利用该类创建对象,并输出该学生的信息、总分和平均分。

2. 编写一个函数,简单排序一个整型数组(从小到大),并给出测试代码。

二、代码实现

1. 学生类设计及成员函数实现

首先,我们需要设计一个学生类,该类包含了姓名、年龄、学号、英语成绩、数学成绩等成员变量。同时,为了方便初始化成员变量,我们还需要设计一个构造函数。同时,为了计算学生的总分和平均分,我们还需要设计一个成员函数。具体代码如下所示:

#include<iostream>
#include<string>
using namespace std;
class Student
{
public:
  Student(string name, int age, int stu_no, int english_score, int math_score); // 构造函数
  void total_score(); // 计算总分和平均分
  void show_info(); // 输出学生信息
private:
  string m_name; // 姓名
  int m_age; // 年龄
  int m_stu_no; // 学号
  int m_english_score; // 英语成绩
  int m_math_score; // 数学成绩
  double m_total_score; // 总分
  double m_average_score; // 平均分
};
// 构造函数
Student::Student(string name, int age, int stu_no, int english_score, int math_score)
  m_name = name;
  m_age = age;
  m_stu_no = stu_no;
  m_english_score = english_score;
  m_math_score = math_score;
// 计算总分和平均分
void Student::total_score()
{
  m_total_score = m_english_score + m_math_score;
  m_average_score = m_total_score / 2;
}
// 输出学生信息
void Student::show_info()
  cout << "姓名:" << m_name << endl;
  cout << "年龄:" << m_age << endl;
  cout << "学号:" << m_stu_no << endl;
  cout << "英语成绩:" << m_english_score << endl;
  cout << "数学成绩:" << m_math_score << endl;
  cout << "总分:" << m_total_score << endl;
  cout << "平均分:" << m_average_score << endl;
int main()
{
  // 创建学生对象,并通过构造函数初始化成员变量
  Student stu("张三", 20, 1001, 85, 90);
  // 计算学生的总分和平均分
  stu.total_score();
  // 输出学生信息、总分和平均分
  stu.show_info();
  return 0;
}

2. 简单排序实现及测试代码

编写简单排序函数应该不难,下面给出核心代码:

// 简单排序函数
void simple_sort(int arr[], int len)
{
  for (int i = 0; i < len - 1; i++)
  {
    for (int j = i + 1; j < len; j++)
    {
      if (arr[i] > arr[j])
      {
        int temp = arr[i];
        arr[i] = arr[j];
        arr[j] = temp;
      }
    }
  }
}

排序函数编写完成后,我们需要写一个测试函数,对其进行验证。下面是测试代码:

int main()
{
  int arr[] = 6;
  int len = sizeof(arr) / sizeof(arr[0]); // 数组长度
  cout << "排序前:" << endl;
  for (int i = 0; i < len; i++)
  {
    cout << arr[i] << " ";
  }
  cout << endl;
  simple_sort(arr, len); // 排序
  cout << "排序后:" << endl;
  for (int i = 0; i < len; i++)
  {
    cout << arr[i] << " ";
  }
  cout << endl;
  return 0;
}

至此,C++实验二答案的讲解就结束了。通过这次实践练习,相信大家对C++具体的实现过程会更加熟练。

  
  

评论区

请求出错了