c语言给二维数组初始化
时间: 2023-12-07 13:36:23 浏览: 39
C语言中有多种方法可以给二维数组进行初始化,其中常见的有以下几种方式:
1. 内部大括号初始化:使用大括号将数组的每一行元素进行初始化,每一行之间用逗号隔开,每一行的元素之间也用逗号隔开。例如:int arr = {{1,2,3},{4,5,6}};
2. 直接赋值:使用循环将数组的每一个元素进行赋值。例如:int arr; for(int i=0;i<2;i++){ for(int j=0;j<3;j++){ arr[i][j] = i*3+j+1; }}
3. 循环对每个元素赋值:使用memset或memset_s函数将数组的每一个元素初始化为0或-1。例如:int arr; memset(arr,0,sizeof(arr));
4. 数组所有元素初始化为相同值:使用循环将数组的每一个元素初始化为相同的值。例如:int arr; for(int i=0;i<2;i++){ for(int j=0;j<3;j++){ arr[i][j] = 0; }}
相关问题
c语言char二维数组初始化
C语言中,char类型的二维数组可以通过以下方式进行初始化:
```c
char arr[2][3] = {{'a',b','c'},{'d','e','f'}};
```
其中,arr是一个2行3列的char类型二维数组,通过花括号{}进行初始化,第一行为{'a','b','c'},第二行为{'d','e','f'}。
另外,也可以使用以下方式进行初始化:
```c
char arr[2][3] = {"abc","def"};
```
其中,arr是一个2行3列的char类型二维数组,通过双引号""进行初始化,第一行为"abc",第二行为"def"。这种方式会自动在每个字符串末尾添加'\0',表示字符串的结束。
需要注意的是,如果初始化的字符串长度超过了数组的列数,那么多余的部分会被忽略掉;如果初始化的字符串长度小于数组的列数,那么剩余的部分会被自动初始化为'\0'。
c语言二维数组初始化输出
以下是C语言二维数组的初始化和输出的例子:
1. 二维数组的初始化
```c
int a[2][3] = { {1,2,3}, {4,5,6} };
```
2. 二维数组的输出
```c
int arr[3][4] = {{1,2,3},4,5,6,7,8,9,10,11};
int i = 0;//i为行循环变量,用来控制行
int j = 0;//j为列循环变量,用来控制列
for (i = 0; i < 3; i ++) {
for(j = 0; j < 4; j ++) {
printf(" %2d",arr[i][j]);
}
printf("\n");//每一行结束时,用来换行
}
```