文档详情

实验五 数组程序设计.pdf

发布:2025-06-01约1.39千字共5页下载文档
文本预览下载声明

学生实验报告

实验课名称:C++语言程序设计

实验项目名称:数组程序设计

专业名称:

班级:

学号:

学生姓名:

教师姓名:

年月日

一.实验名称

数组程序设计

二.实验目的与要求

1、掌握数组的定义和声明方法;

2、掌握数组元素访问及下标的使用;

3、理解数组元素的排序方法和优化。

三.实验设备与软件环境

VC++6.0

四.实验内容

1、编写算法,将数组元素中存放的数据逆序存放。

例如:数组中存放的数据:

1,2,3,4,5,6,7,8,9,10

经过逆序算法处理后,数组中存放的数据:

10,9,8,7,6,5,4,3,2,1

要求按顺序输出算法运行前后数组中的存放数据:

算法处理前:1,2,3,4,5,6,7,8,9,10

算法处理后:10,9,8,7,6,5,4,3,2,1

2、有一组数据{77,65.76,32,75,82,67,95,85,56,78}存储在数组中,编写程序求

出这组数据的平均值,并且求出所有高于平均值的数及其在数组中的下标值。

例如:95是高于平均值的数,应该输出为:

下标:7值:95

3、冒泡法排序算法的改进。

冒泡法排序在每一趟排序过程中,将数据按照存储位置的顺序进行逐一扫

描,遇到存放顺序不对的两个相邻数字,则交换它们的存储位置。这样的操作可

以达到一趟扫描至少排好一个数的作用,所以冒泡法排序最多需要N-1趟排序。

在设计算法时可以这样考虑,如果在某一趟扫描中所有的数据都不需要交换

数据,说明数组中的数就已经有序的了,可以提前结束排序工作,不需要进行下

一趟排序了,这也算是对冒泡排序算法的一个小小的改进。

按照这样的思路,我们可以在程序中设置一个变量,让它扮演记录一趟排序

过程中是否有数据的交换(有数据交换其值为1,没有数据交换数值为0)。如

果没有数据交换,就可以提前结束排序过程。

按照上面的算法提示完成冒泡法排序算法及其改进。

五、实验过程与结果

1、数组逆序存储

(1)任务分析

(2)算法设计

(3)程序流程图

(4)C++程序代码

(5)程序执行结果

2、数组平均值与下标

(1)任务分析

(2)算法设计

(3)程序流程图

(4)C++程序代码

(5)程序执行结果

3、冒泡排序法

(1)任务分析

(2)算法设计

(3)程序流程图

(4)C++程序代码

(5)程序执行结果

六、程序设计中遇到的问题、经验和体会

显示全部
相似文档