案例分析
首先将每位歌手的得分储存到一维数组中,其次构建一个排序函数,使用函数实现对一维数组的排序,因此需要将一维数组作为函数函数参数传入函数。
必备知识
- 一维数组作为函数参数
在程序中,为了方便对数组的操作,经常会定义一些操作数组的功能函数,这些函数将数组作为函数参数,在数组作为函数参数时,必须要保证形参与实参的数组是相同类型,且有明确的数组说明。如数组维度,数组大小等。
例如下面两种参数类型:
func(int arr[5]);
func(int arr[],int n);
这两种参数类型都指定了数组的维度和数组大小,第二行代码中参数n代表数组的长度。
需要注意的是,数组作为函数参数时,传递的就是数组所在的内存块地址,形参与实参操作的是同一块内存。在形参中改变数组中的元素,实参的数组也会改变。
- 冒泡排序法
冒泡排序就是不断地比较数组中相邻的两个元素,轻小者上浮,较大者向下沉,整个过程和水中起泡上升的原理相似。
具体如下:
(1)从第一个元素开始,依次向相邻的两个元素进行两两比较,直到最后两个元素完成比较,如果前一个元素比后一个元素大,则交换位置,整个过程完成后,数组中的最后一个元素就是最大值。
(2)除了最后一个元素,将剩余的元素继续进行两两比较,将数组中第二大的数放到倒数第二的位置
(3)以此类推(这个时候我想到了递归)
案例实现
1,案例设计