详解C语言初阶之数组
数组是一种存储多个相同类型数据的结构,它是C语言中最为常见的数据类型之一。本篇文章将详细讲解C语言数组的定义、初始化、访问、遍历和常见问题等方面内容。
数组的定义
数组的定义形式为:
type array_name[array_size];
其中,type
代表数组中元素的数据类型,array_name
为数组名,array_size
表示数组的元素个数。
例如:
int scores[10];
定义了一个名为scores
的数组,包含10个整型元素。
数组的初始化
数组在定义时,可以给定初始值。例如:
int scores[5] = {85, 72, 93, 67, 88};
上述代码定义了一个名为scores
的数组,包含5个整型元素。同时,数组的初始值为85、72、93、67和88。
还可以使用逐个赋值的方式进行数组初始化。例如:
int scores[5];
scores[0] = 85;
scores[1] = 72;
scores[2] = 93;
scores[3] = 67;
scores[4] = 88;
数组的访问
数组中的元素可以通过下标访问,下标从0开始,最大为数组长度减1。例如:
scores[0] = 82;
上述代码将scores
数组的第一个元素修改为82。
数组的遍历
遍历数组是一个常见的操作,可以使用循环结构来遍历数组中的元素。例如:
for (int i = 0; i < 5; i++) {
printf("scores[%d] = %d\n", i, scores[i]);
}
上述代码将scores
数组中的元素遍历输出,结果为:
scores[0] = 85
scores[1] = 72
scores[2] = 93
scores[3] = 67
scores[4] = 88
常见问题
数组越界
数组下标不能越界,即不能访问超出数组范围的元素。例如:
scores[5] = 90;
上述代码越界访问了scores
数组,会导致不可预知的行为,可能会引起程序崩溃。
数组长度
数组长度需要在定义时确定,且一经确定不能改变。因此,在定义数组时需要考虑到数组的长度是否满足需求。
示例说明
示例1——求平均数
下面代码演示了如何通过遍历数组,计算出数组numbers
中5个整数的平均数:
#include <stdio.h>
int main()
{
int numbers[5] = {10, 20, 30, 40, 50};
int sum = 0;
double avg = 0.0;
for (int i = 0; i < 5; i++) {
sum += numbers[i];
}
avg = (double)sum / 5.0;
printf("平均数为:%.2lf\n", avg);
return 0;
}
输出结果为:
平均数为:30.00
示例2——查找最大数
下面代码演示了如何遍历数组,查找数组numbers
中5个整数中的最大数:
#include <stdio.h>
int main()
{
int numbers[5] = {10, 20, 30, 40, 50};
int max = numbers[0];
for (int i = 1; i < 5; i++) {
if (numbers[i] > max) {
max = numbers[i];
}
}
printf("最大数为:%d\n", max);
return 0;
}
输出结果为:
最大数为:50
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解C语言初阶之数组 - Python技术站