• 七、二维数组


    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(" ");//一行输出完成后,换行
    //        }
    //        printf("交换之后 ");
    //        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(" ");
    //        }
            //二维数组找最大值,确定最大值的位置,如果多个,输出多个
    //        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(" ");
    //        }
    //        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 ",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(" ");
    9.一位数组,只有下标概念,给出数组名和下标就可以操作。
  • 相关阅读:
    对象o o[name]和o['name']的差别
    数组转换为字符串
    函数和方法区别
    创建对象和构造函数的区别
    jQuery光源移动效果
    继承原型链
    javascript跨域
    prototype、constructor、__proto__
    寄生组合式继承
    组合继承
  • 原文地址:https://www.cnblogs.com/gnhxsk/p/5170646.html
Copyright © 2020-2023  润新知