上一章我们讲了数组的初始化,这一章讲的是数组中的二维数组!
二维数组:元素为双下标变量的数组。
C语言、C++学习、基础教程、项目实践请进群
数据类型数组名[行][列];
仍连续保存。
1. 初始化
A. 一般形式
int arr[3][3] = {
{ 18, 20, 26 },
{ 35, 10, 23 },
{ 24, 32, 58 } };
B、省略其中的{}
int arr1[3][3] = { 18, 20, 26,
35、10、23、
24、32、58};
C. //只能省略行下标,不能省略列下标。
int arr2[][3] = { 18, 20, 26,
35、10、23、
24、32、58};
D、int arr2[][3] = { 0 }; //arr[0][0]=0; 整个数组为0
2. 作业
注意大写加粗:数组大小为n,数组下标从0-----n-1
整数 n;
对于(i = 0;i < 2;i++)
对于 (j = 0; j < 4; j++)
对于 (n = 0; n < 6; n++)
(“0\t”);
例子::
#
int main()
//二维数组的初始化
//int arr[3][3] = {
// { 18, 20, 26 },
// { 35, 10, 23 },
// { 24, 32, 58 } };
//int arr1[3][3] = { 18, 20, 26,
// 35, 10, 23,
// 24, 32, 58 };
//int arr2[][3] = { 18, 20, 26, //只能省略行下标,不能省略列下标
// 35, 10, 23,
// 24, 32, 58 };
//int arr3[][3] = { 0 }; //arr[0][0]=0; 整个数组都是0
//二维数组赋值
整数 i,j;
整数最大值、最小值;
int Arr[2][3];
int Arr1[3][2];
//使用两个嵌套的for赋值来使用键盘
("请输入号码:\n");
对于 (i = 0; i < 2; i++)
对于 (j = 0; j < 3; j++)
scanf("%d", &Arr[i][j]); //
//打印
对于 (i = 0; i < 2; i++)
对于 (j = 0; j < 3; j++)
("arr[%d][%d]=%d\t", i, j, Arr[i][j]); //
(“\n”);
(“\n\n”);
//找到最大值
最大值 = Arr[0][0]; //Arr[0][0]数组的第一个元素
对于 (i = 0; i < 2; i++)
对于 (j = 0; j < 3; j++)
if (max < Arr[i][j])
最大值 = Arr[i][j];
("最大值=%d\n", 最大值);
(“\n\n”);
//将输入数组赋值给另一个数组
对于 (i = 0; i < 2; i++)
对于 (j = 0; j < 3; j++)
Arr1[j][i] = Arr[i][j];
对于 (i = 0; i < 3; i++)
对于 (j = 0; j < 2; j++)
("Arr1[%d][%d]=%d\t", i, j, Arr1[i][j]);
(“\n”);
0;