首页 理论教育 C语言教程:一维数组元素引用

C语言教程:一维数组元素引用

时间:2023-10-23 理论教育 版权反馈
【摘要】:例如:float a[10];那么a[0]、a[i]、a[i+1]+1都是对数组元素的合法引用,每个下标表达式都代表了该元素在数组中的位置,其值的下限为0,上限为9。C语言程序在运行时,系统不对数组元素的下标做出检查,因此在编写程序时一定要保证数组下标不越界。定义长度为10的数组s,依次对数组元素赋值,需要用循环结构。图7-2例7-1的运行结果引用数组元素时,要搭配循环结构实现对元素的逐个引用,而不能对数组整体引用。

C语言教程:一维数组元素引用

数组由若干元素组成,每个元素就是一个变量,代表内存中的一个存储单元,C编译程序为数组分配一串连续的存储单元。数组只能引用元素而不能整体引用数组。一维数组引用的一般形式如下:

数组名[下标表达式];

下标表达式可以是整型常量,也可以是整型表达式。例如:

float a[10];

那么a[0]、a[i]、a[i+1]+1都是对数组元素的合法引用,每个下标表达式都代表了该元素在数组中的位置,其值的下限为0,上限为9。C语言程序在运行时,系统不对数组元素的下标做出检查,因此在编写程序时一定要保证数组下标不越界。

【例7-1】定义一个数组并对元素依次赋值,最后逆序输出各个元素。

【分析】定义长度为10的数组s,依次对数组元素赋值,需要用循环结构。逆序输出时,先输出最后的元素,按下标从大到小的顺序输出。

程序运行结果如图7-2所示。

图7-2 例7-1的运行结果

【说明】引用数组元素时,要搭配循环结构实现对元素的逐个引用,而不能对数组整体引用。(www.xing528.com)

【例7-2】使用冒泡法对10个整数进行排序。

【分析】排序方式有“升序”和“降序”两种,冒泡法属于升序。基本方法是每次比较相邻的两个数,把小数放在前面。若有5个数:5、4、3、2、1。第1次比较,把5和4交换;第2次比较,把5和3交换;第3次比较,把5和2交换;第4次比较,把5和1交换;最后得到“4、3、2、1、5”的顺序。经过第1轮比较,得到最大的数“5”,共交换了4次;继续第2轮比较,得到“3、2、1、4、5”的顺序,共交换了3次;第3轮比较,得到“2、1、3、4、5”的顺序,共交换了2次;第4轮比较,得到“1、2、3、4、5”的顺序,只交换了1次。

由此可以归纳出,如果有n个数,需要进行n-1轮比较,而在第j轮比较中需要进行n-j次两两比较。

例7-2 运行视频

程序运行结果如图7-3所示。

图7-3 例7-2的运行结果

【说明】使用两层循环实现冒泡排序。j变量控制外层循环,10个数排序需要进行9轮比较,j初值为0,即j<9。i变量控制内层循环,执行第j次外循环,需要执行n-j次内循环,i初值为0,即i<9-j。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈