数组是保存固定数量的相同类型的值的数据的集合。例如:如果要存储100个学生的分数,则可以为其创建一个数组。
int num[100];
如何在C中声明数组?
Data_type array_name[size_of_array];
例如,
float num[10];
下面是一些可以将数组的所有元素初始化为相同值的不同方法:
- 初始化列表:要在C中使用相同的值初始化数组,天真的方法是提供一个初始化列表。我们将其与小型阵列配合使用。
int num[5] = {1, 1, 1, 1, 1};
这将在所有索引处将num数组初始化为值1。
我们也可以忽略数组的大小:int num[ ] = {1, 1, 1, 1, 1}
如果我们提供了空的初始化列表或仅在初始化列表中指定0,则数组将初始化为0。
int num[5] = { }; // num = [0, 0, 0, 0, 0] int num[5] = { 0 }; // num = [0, 0, 0, 0, 0]
- 指定的初始值设定项:当我们要用相同的值初始化范围时使用此初始值设定项。仅与GCC编译器一起使用。
[ 第一的 。 。 。 last] =值;int num[5]={ [0 . . . 4 ] = 3 }; // num = { 3, 3, 3, 3, 3}
我们也可以忽略数组的大小:
int num[ ]={ [0 . . . 4 ] = 3 }; // num = { 3, 3, 3, 3, 3}
- 宏:为了初始化具有相同值的巨大数组,我们可以使用宏。
#include
#define x1 1 #define x2 x1, x1 #define x4 x2, x2 #define x8 x4, x4 #define x16 x8, x8 #define x32 x16, x16 int main(void) { // array declaration int num[] = { x32, x8, x4, x1}; int size = sizeof(num)/ sizeof(int); // 32+8+4+1= 45 printf("The size of the array is %d\n", size); printf("The value of element in the array at index 5 is %d ", num[4]); return 0; } 输出:The size of the array is 45 The value of element in the array at index 5 is 1
- 使用For循环:我们还可以使用for循环来初始化具有相同值的数组。
#include
int main(void) { int size = 6; int val = 1; // array declaration int arr[size]; int i; // initializing array elements for (i = 0; i < size ; i++){ arr[i] = val; } // print array printf("The array is:"); for (i = 0; i < size ; i++){ printf("%d ", arr[i]); } return 0; } 输出:The array is:1 1 1 1 1 1
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。