C语言数组详细介绍
什么是数组?
数组是在C语言中用来存储一组相同数据类型元素的数据结构,数组的每个元素都是通过一个唯一的下标访问的。在C语言中,数组是一段连续的内存地址,这些内存地址都包含相同的数据类型,array[0]表示第一个元素,array[1]表示第二个元素,以此类推。
如何定义一个数组?
在C语言中,数组的定义有两个部分:数据类型和数组名。数组元素的数量也必须在数组定义中指定。
数组定义的格式如下:
data_type array_name[array_size];
其中,data_type
是数组中元素的数据类型,array_name
是数组的名字,array_size
指定了数组的元素个数。
例如,如下代码定义了一个名为arr
的整型数组,数组元素数量为10:
int arr[10];
如何给数组赋值?
C语言的数组是通过唯一的下标访问的,下标从0开始计数。在数组定义时,可以在花括号中列举出每个元素的初始值。例如:
char str[6] = {'H', 'e', 'l', 'l', 'o', '\0'};
也可以在程序运行时给数组赋值。例如:
int arr[3];
arr[0] = 10;
arr[1] = 20;
arr[2] = 30;
如何访问数组元素?
我们可以使用下标操作符[]
来访问数组中的元素,下标从0开始计数。例如:
int arr[3] = {10, 20, 30};
int x = arr[0]; // x等于10
int y = arr[1]; // y等于20
int z = arr[2]; // z等于30
如何遍历数组?
遍历数组,即依次访问数组中的每个元素。常用的方式是使用循环结构,例如:
int arr[3] = {10, 20, 30};
int i;
for (i = 0; i < 3; i++) {
printf("%d ", arr[i]);
}
输出结果为:10 20 30
在函数中传递数组
在C语言中,数组名本身就是指向数组第一个元素的指针。因此,在函数中传递数组只需要将数组名作为参数传递即可。例如:
void printArray(int arr[], int len) {
int i;
for (i = 0; i < len; i++) {
printf("%d ", arr[i]);
}
}
int main() {
int arr[3] = {10, 20, 30};
printArray(arr, 3);
return 0;
}
输出结果为:10 20 30
示例1:数组的平均数
计算数组中所有元素的平均数,可以遍历数组并对每个元素进行累加,最后除以元素的个数即可。例如:
double average(int arr[], int len) {
int i;
double sum = 0;
for (i = 0; i < len; i++) {
sum += arr[i];
}
return sum / len;
}
int main() {
int arr[5] = {1, 5, 2, 8, 7};
printf("average = %.2f", average(arr, 5));
return 0;
}
输出结果为:average = 4.60
示例2:查找最大元素
遍历数组并进行比较,找到最大元素。例如:
int findMax(int arr[], int len) {
int i;
int max = arr[0];
for (i = 1; i < len; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
return max;
}
int main() {
int arr[5] = {1, 5, 2, 8, 7};
printf("max = %d", findMax(arr, 5));
return 0;
}
输出结果为:max = 8
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言数组详细介绍 - Python技术站