七二维数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了七二维数组相关的知识,希望对你有一定的参考价值。

1.只有一个下标的数组称为一维数组,有两个下标的数组称为二维数组,有N个下标的数组称为n维数组。
2.二维数组定义:
类型说明符 数组名[常量表达式1][常量表达式2{值1,值2...};
         int a[2][3] = {{7,6,3},{2,8,5}}; 说明23列的数组
3.常量表达式1表示第一维下标的长度
常量表达式2表示第二维下标的长度
4.二维数组的元素也称为双下标变量
5.赋值一般与两层for循环嵌套(双循环)使用。外层循环控制行数,内层循环控制每行对应的列数。
6.二维数组的用途:游戏地图(1表示此处是障碍物,0表示此处可以通过);电影院购票(1表示此位置已经卖过,0表示此位置还有票)。
7.注意事项:
(1)二维数组定义时,可以不指定第一维的长度,但是必须给定第二维。
(2)元素个数不足,会自动补齐
8.右左原则,先读右边,遇到括号反向。
        //二维数组交换
//        int a[2][3] = {0} , b[3][2] = {0};
//        for (int i = 0; i < 2; i ++) {//控制二维数组行数的输出
//            for (int j = 0; j < 3; j ++) {//控制二维数组列数的输出
//                a[i][j] = arc4random()%(100 - 10 + 1) + 10;//随机生成数组
//                printf("%d ",a[i][j]);//输出数组
//            }
//            printf("\n");//一行输出完成后,换行
//        }
//        printf("交换之后\n");
//        for (int i = 0; i < 2; i ++) {//控制被交换二维数组的行数
//            for (int j = 0; j < 3; j ++) {//控制被交换二维数组的列数
//                b[j][i] = a[i][j];//交换后的数组的列数=行数,行数=列数
//            }
//        }
//        for (int i = 0; i < 3 ; i ++) {
//            for (int j = 0; j < 2; j ++) {
//                printf("%d ",b[i][j]);
//            }
//            printf("\n");
//        }
        //二维数组找最大值,确定最大值的位置,如果多个,输出多个
//        int number[2][3] = {0};
//        int max = 0;
//        for (int i = 0; i < 2; i ++) {
//            for (int j = 0; j < 3; j ++) {
//                number[i][j] = arc4random()%(100 - 10 + 1) + 10;
//                printf("%d ",number[i][j]);
//            }
//            printf("\n");
//        }
//        for (int i = 0; i < 2; i ++) {
//            for (int j = 0; j < 3; j ++) {
//                max = max > number[i][j] ? max : number[i][j];
//            }
//        }
//        printf("max=%d\n",max);
//        for (int i = 0; i < 2; i ++) {
//            for (int j = 0; j < 3; j ++) {
//                if (max == number[i][j]) {
//                    printf("i=%d j=%d",i,j);
//                    //break;//只输出一个
//                }
//            }
//        }
//        printf("\n");
9.一位数组,只有下标概念,给出数组名和下标就可以操作。

以上是关于七二维数组的主要内容,如果未能解决你的问题,请参考以下文章

七java数组

[luogu] P4514 上帝造题的七分钟 (树状数组,二维差分)

七数组和集合(一维数组和二维数组的声明以及使用,ArrayList类,HashTable,List,Directory字典等常用集合(泛型和非泛型))

C语言试题三十七之求除一个2×m整型二维数组中最大元素的值,并将此值返回调用函数。

C语言试题三十七之求除一个2×m整型二维数组中最大元素的值,并将此值返回调用函数。

二维树状数组模板(区间修改+区间查询)