一维数组和二维数组的下标都从0开始,用的时候从1开始,定义大一点的内存
定义方式: 数据类型 数组名【】【】
二维数组在程序中的赋值:
int i,j,a[2][3];
for(i=1;i<=2;i++)
for(j=1;j<=3;j++)
scanf("%d,&a[i][j];
调用memset函数把元素a的个元素清零 (头文件string.h)。。。。。杨辉三角用到这个知识点
可0,1(并不是每个数都是1,是随机正数),-1
例:inta[2][3];
memset(a,0,sizeof(a));
通过memcpy函数将数组a各元素的值复制到数组b的各元素中:(用for语句也可以)
int b[2][3];
memcpy(b,a,sizeof(a));
二维数组元素的引用:注意如果数组下标从0开始计数
应用举例:
找出矩阵所有元素中最大值,关键代码:
max=a[0][0];(只在c中可用c++中有这个函数)
for(i=0;i<3;i++)
for(j=0;j<4;j++);
if(a[i][j]>max)
{s=i;t=j;max=a[i][j];}
二维数组元素常用的操作
1.查找(注意下标是从0还是从1开始)
2.计算 (计算n*m的矩阵的所有元素的平均值)
例;计算m*m的方阵的对角线所有元素的和
思路:主元i=j;对面的i+j=一个值
3.转置 (矩阵的转置是行列互换,就是沿对角线反转)
例题:
1.判断一个方阵是否为下三角矩阵(利用行和列的关系)
2.找出二位数组中的幸运数字并表示其行号和列号和对应元素值