21xrx.com
2024-12-22 20:15:04 Sunday
登录
文章检索 我的文章 写文章
C++ 结构化编程实验报告
2023-07-04 20:13:08 深夜i     --     --
- C++ - 结构化编程 - 实验报告 - 数据结构 - 算法设计

一、实验目的

通过本次实验,学习并掌握 C++ 结构化编程的基本概念和方法,同时完成对结构体和函数的初步学习。

二、实验环境

本次实验采用 Microsoft Visual Studio 2019 编程软件,并且采用 C++ 作为主要的编程语言。

三、实验内容

本次实验分为两个部分,分别是结构体实验和函数实验。

(一)结构体实验

1. 定义一个结构体,包括学生的姓名、学号、性别和成绩四个字段。

2. 定义一个指向结构体的指针。

3. 动态分配内存,创建一个结构体类型的数组。

4. 输入数据,计算平均分,并输出名字、学号和平均分。

(二)函数实验

1. 编写一个计算数组平均值的函数。

2. 编写一个计算数组最大值的函数。

3. 编写一个计算数组最小值的函数。

4. 在主函数中输入数据,计算数组的平均值、最大值和最小值,并输出结果。

四、实验过程

(一)结构体实验

1. 首先,定义一个结构体类型,包括学生的姓名、学号、性别和成绩四个字段。


struct Student

  string name;

  int number;

  char gender;

  float score;

;

2. 定义一个指向结构体的指针。


Student *stu;

3. 动态分配内存,创建一个结构体类型的数组。这里我们默认学生的数量为 5。


stu = new Student[5];

4. 输入数据,计算平均分,并输出名字、学号和平均分。


float sum = 0, average;

for (int i = 0; i < 5; i++)

{

  cout << "请输入学生的信息:" << endl;

  cout << "姓名:";

  cin >> (stu + i)->name;

  cout << "学号:";

  cin >> (stu + i)->number;

  cout << "性别:";

  cin >> (stu + i)->gender;

  cout << "成绩:";

  cin >> (stu + i)->score;

  sum += (stu + i)->score;

}

average = sum / 5;

cout << endl << "学生信息如下:" << endl;

for (int i = 0; i < 5; i++)

{

  cout << "姓名:" << (stu + i)->name << endl;

  cout << "学号:" << (stu + i)->number << endl;

}

cout << "平均分:" << average << endl;

(二)函数实验

1. 首先,编写一个计算数组平均值的函数。代码如下:


float average(float a[], int n)

{

  float sum = 0;

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

    sum += a[i];

  return sum / n;

}

2. 接着,编写一个计算数组最大值的函数。代码如下:


float max(float a[], int n)

{

  float max = a[0];

  for (int i = 1; i < n; i++)

  {

    if (a[i] > max)

      max = a[i];

  }

  return max;

}

3. 然后,编写一个计算数组最小值的函数。代码如下:


float min(float a[], int n)

{

  float min = a[0];

  for (int i = 1; i < n; i++)

  {

    if (a[i] < min)

      min = a[i];

  }

  return min;

}

4. 最后,在主函数中输入数据,计算数组的平均值、最大值和最小值,并输出结果。代码如下:


float a[5];

for (int i = 0; i < 5; i++)

{

  cout << "请输入第" << i + 1 << "个数:";

  cin >> a[i];

}

cout << "平均值为:" << average(a, 5) << endl;

cout << "最大值为:" << max(a, 5) << endl;

cout << "最小值为:" << min(a, 5) << endl;

五、实验结果

经过实验,我们获得了以下结果:


请输入学生的信息:

姓名:Tom

学号:20190301

性别:M

成绩:80

请输入学生的信息:

姓名:Jerry

学号:20190302

性别:F

成绩:90

请输入学生的信息:

姓名:Tina

学号:20190303

性别:F

成绩:70

请输入学生的信息:

姓名:Baron

学号:20190304

性别:M

成绩:85

请输入学生的信息:

姓名:Lucy

学号:20190305

性别:F

成绩:95

学生信息如下:

姓名:Tom

学号:20190301

姓名:Jerry

学号:20190302

姓名:Tina

学号:20190303

姓名:Baron

学号:20190304

姓名:Lucy

学号:20190305

平均分:84

请输入第1个数:2

请输入第2个数:3

请输入第3个数:1

请输入第4个数:5

请输入第5个数:4

平均值为:3

最大值为:5

最小值为:1

六、实验总结

通过本次实验,我们学习了 C++ 结构化编程的基本概念和方法,掌握了结构体和函数的初步操作。同时,我们也对 Microsoft Visual Studio 2019 软件进行了更深入的了解和使用。通过实验的实践过程,我们不仅能够更熟练地运用 C++ 语言进行结构化编程,还能够更好地掌握 C++ 语言中重要的概念和方法,从而为今后的开发工作打下良好的基础。

  
  

评论区

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