精华内容
下载资源
问答
  • 正确定义二维数组

    万次阅读 多人点赞 2019-06-24 16:23:17
    对二维数组进行正确初始化 二维数组必须指定列的数量,行的数量可以不定义即可以省略第一维的定义,但不能省略第二维的定义 1.分行进行初始化 int a[2][3] = {{1,2,3},{4,5,6}}; 在{}内部再用{}把各行分分开,第0行...

    对二维数组进行正确初始化

    二维数组必须指定列的数量,行的数量可以不定义即可以省略第一维的定义,但不能省略第二维的定义

    • 1.分行进行初始化
      int a[2][3] = {{1,2,3},{4,5,6}};
      在{}内部再用{}把各行分分开,第0行的初值是1,2,3。第1行的初值是4,5,6。相当于执行:
      int a[2][3];
      a[0][0] = 1; a[0][1] = 2; a[0][2] = 3;a[1][0] = 4;a[1][1] = 5; a[1][2] = 6;
    • 2.不分行初始化
      int a[2][3] = {1,2,3,4,5,6};
      把{ }中的数据依次赋给a数组各元素。
    • 3.为部分数组元素初始化:
      static a[2][3] = {{1,2}, {4}};
      第一行只有两个初值,按顺序分别赋给a[0][0] 和 a[0][1];第二行的初值4赋给a[1][0]。由于存储类型是static,故其他元素的初始值是0。ps:某些编译器,存储类型不是static的初始值也是0。
    • 4.可以省略第一维定义,但不能省略第二维定义
      a[][3] = {1,2,3,4,5,6};
      一般,省略第一维定义时,第一维的规则如下:
      初值个数能被第二位整除,所得的商就是第一维的大小,如果不能整除,第一维的大小为商 + 1。
    展开全文
  • java 二维数组定义格式

    千次阅读 2020-02-16 23:39:17
    格式1 数据类型[][] 变量名 = new 数据类型[m][n]; m表示这个二维数组有多少个一维数组 n表示每一个一维数组的元素个数... 定义了一个二维数组arr 这个二维数组有3个一维数组,名称是arr[0],arr[1],arr[2] 每个...

    格式1
        数据类型[][] 变量名 = new 数据类型[m][n];
            m表示这个二维数组有多少个一维数组
            n表示每一个一维数组的元素个数
            
    举例:
        int[][] arr = new int[3][2];
        定义了一个二维数组arr
        这个二维数组有3个一维数组,名称是arr[0],arr[1],arr[2]
        每个一维数组有2个元素,可以通过arr[m][n]来获取
        表示获取第m+1个一维数组的第n+1个元素

     

    格式2
        数据类型[][] 变量名 = new 数据类型[m][];
        m表示这个二维数组有多少个一维数组
        这一次没有直接给出一维数组的元素个数,可以动态的给出。
        
    举例:
        int[][] arr = new int[3][];
        arr[0] = new int[2];
        arr[1] = new int[3]
        arr[2] = new int[1];

     


    格式3

        数据类型[][] 变量名 = new 数据类型[][]{{元素…},{元素…},{元素…}}; 
        
        简化版格式(推荐): 数据类型[][] 变量名 = {{元素…},{元素…},{元素…}}; 
        
        举例: int[][] arr = {{1,2,3},{4,6},{6}};

    展开全文
  • 一、二维数组定义 语法:类型说明符 数组名[常量表达式][常量表达式] 例:float a[3][4] //理解为 a00 a01 a02 a03 a10 a11 a12 a13 a20 a21 a22 a23 a30 a31 a32 a33 由此可知a[i][j]为I行J列 二、二维...

    一、二维数组的定义

    语法:类型说明符 数组名[常量表达式][常量表达式]

    例:float a[3][4]

    //理解为

    a00 a01 a02 a03

    a10 a11 a12 a13

    a20 a21 a22 a23

    a30 a31 a32 a33

    由此可知a[i][j]为I行J列

    二、二维数组初始化

    //1、分行给二维数组赋值
    int a[3][4] = {{1,2,3,4},{5,6,7,8},{9,10,11,12}};
    
    //2、将所有数据写在一个{}内,按照存储顺序依次赋值
    int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};
    
    //3、可以对部分元素赋初值(剩下元素自动补成0)
    int a[3][4] = {{1},{0,6},{0,0,11}}

    三、如何使两个数组值相等

    //循环实现
    #include<stdio.h>
    int main()
    {
    int i,j;
    int a[4][2] = {1,2,3,4,5,6,7,8};
    int b[4][2];
    
    for(i=0;i<4;i++)
    {
      for(j=0;j<2;j++)
         {
             b[i][j] = a[i][j];
             
    
         }
    
    }
    }

     

    展开全文
  • #Python# 二维数组定义、使用的几种方法

    万次阅读 多人点赞 2019-05-16 16:20:36
    之前Python里面创建、使用二维数组也很懵,于是也上网查了一些讲解,也发现一些类似的问题,大多数存在着 以为定义正确二维数组,但修改数据的时候,发现数据经常一起串改。如: b=[[0,0,0]]*3 b[0][1]=1 #...

    通常的困扰

    之前对Python里面创建、使用二维数组也很懵,于是也上网查了一些讲解,也发现一些类似的问题,大多数存在着 以为定义正确了二维数组,但修改数据的时候,发现数据经常一起串改。如:

    	b=[[0,0,0]]*3
        b[0][1]=1    #这里因为初始[0,0,0]可以这样写数据,如果初始空数组则不能
        print(b)
        b[1].append(3)
        print(b)
    

    输出:

    [[0, 1, 0], [0, 1, 0], [0, 1, 0]]
    [[0, 1, 0, 3], [0, 1, 0, 3], [0, 1, 0, 3]]

    因为像这种*3操作,其数据在三个数组里会被一起改掉。

    1、先介绍最简单的一种方式

    因为Python的数组本身就是动态可变的,同时提供append()函数,该函数不仅可以在一个数组后面添加数字,也可以在后面任意添加数组,如:

    	c = []
        c.append([1,2,3,4])
        c.append([5,6,7,8])
        c.append(9)
        print(c)
    

    最后输出为:
    [[1, 2, 3, 4], [5, 6, 7, 8], 9]
    该种方法在 已建立 了的数组基础上可以通过c[ i ][ j ]的方式对数据修改和读取:

    	c[0][1]=10
    

    输出为:
    [[1, 10, 3, 4], [5, 6, 7, 8], 9]

    2、再介绍最常见的一种方式

    	b=[[] for i in range(4)]
        b[0].append(5)
        b[1].append(6)
        print(b)
    

    最后输出为:
    [[5], [6], [ ], [ ]]
    该种方法在最大的好处在于通过b[ i ]来存储二维数据,更加直观和清晰。但需先已知数据行数,这里是四行数据。
    但一旦对数据没有通过append()方式添加,而是在位置上直接赋值如:

    	b=[[] for i in range(4)]
        b[0]=5
        b[1].append(6)
        print(b)
    

    最后输出为:
    [5, [6], [ ], [ ]]
    看输出就知道对于b[1] 以后就只能是一个数字5,不能再在此位置存储数据。

    3、最后介绍最暴力直观的一种方式

    	a=[[[]for i in range(3)]for i in range(4)]
    

    最后输出为:
    [[[], [], []], [[], [], []], [[], [], []], [[], [], []]]
    显然建立了四行三列的矩阵,且每个位置上也是数组的形式,如果比较习惯于通过a[i][j]这样的方式来存储读取数据,这种方式很适合,同时也可以在 未建立 数据(即还没有实际数据)的基础上,也能通过c[ i ][ j ]的方式存储修改数据。弊端是要先知道行列数。如果完全了解上面两种方式的话,这种建立二维数组方式感觉很没必要。

    	a=[[[]for i in range(3)]for i in range(4)]
        a[0][0]=1
        a[0][1].append(2)
        print(a)
    

    最后输出为:
    [[1, [2], []], [[], [], []], [[], [], []], [[], [], []]]
    这里我们就可以看到直接赋值和append()函数的差别。

    展开全文
  • 二维数组定义和初始化

    万次阅读 2016-12-30 10:01:57
    下面是两个二维数组定义和初始化。public class Arraydemo2{ public static void main (String[] args){ //定义并初始化arr 方法1; int[][] arr=new int[3][4]; arr[0][1]=1; arr[0][2]=2;
  • c语言二维数组定义和初始化

    万次阅读 2015-09-03 00:44:57
    二维数组: 用于存放一位数组的数组,被称为二维数组。 #include //二维数组的长度 #define kI 3 #define kJ 4 /** 打印二维数组元素 */ void printfArray(int array[][kJ], int x) { for (int i = 0; i ...
  • C语言-二维数组定义、引用

    千次阅读 2019-04-10 19:05:52
    由行和列组成的二维表格形式元素,二维数组其实也就是矩阵 基本格式:数据类型 数组名[行长度][列长度]; 行长度为二维数组行的个数,必须为常量表达式,不能为变量 列长度为二维数组每一行列的个数,必须为常量...
  • 二维数组定义格式

    千次阅读 2020-10-07 17:56:07
    二维数组定义格式
  • 二维数组正确初始化规则

    千次阅读 多人点赞 2019-03-19 20:30:50
    最近刷题总在二维数组初始化这里栽跟头,接下来总结一点二维数组的初始化规则以便记忆 这里提一句一维数字代表行,二维数字代表列 arr[2][3]就是创建两行三列的数组 二维数组在初始化的时候可以分行进行初始化 int...
  • Python numpy实现二维数组和一维数组拼接的方法撰写时间:2017.5.23一维数组1.numpy初始化一维数组a = np.array([1,2,3]);print a.shape输出的值应该为(3,)二维数组2.numpy初始化二维数组a = np.array([[1,2,3]])...
  • JAVA中一维数组和二维数组定义

    万次阅读 多人点赞 2008-12-30 15:28:00
    在java中数组被看成是一个对象在定义数组时,有两种定义方法:int[] a 和int a[];第种是C/C++对数组定义方式,对于JAVA...1 一维数组定义 //定义包含三个元素的一维数组 //方法1,先new对象,然后再初始化每个元
  • 发现这个问题在于LeetCode写算法...根据我的猜测,使用 * 来定义二维数组时会复制之前的一维数组,即一维数据都会指向同一地址,每一行都是一样的。所以[[0]*3]*2并不能当做我们所熟知的二维数组,建议以后定义二维
  • 一、二维数组 (一)二维数组概述 二维数组其实就是每一个元素为一维数组的数组。 (二)二维数组初始化格式 1.动态初始化 1.1 二维数组格式1 数据类型[][] 变量名 = new ...定义了一个二维数组arr 这个二维数组有3...
  • 二维数组定义 基本与一维数组类似 //定义一个3行5列的二维数组 //方法1,先new对象,然后再初始化每个元素 int[][] a = new int[3][5];  a[0][0]=1; a[0][1]=2; a[0][2]=3; class ...
  • C++ 动态申请二维数组二维数组传参

    千次阅读 多人点赞 2018-12-15 11:59:41
    但是如何动态分配一个二维数组呢?像这样: int **pa = new int[3][3] ?测试一次 => 显然这种分配方式是不正确的: 在尝试新的方法之前,我们需要首先了解二维数组在内存中的存储结构: ...
  • 二维数组定义

    2016-03-21 17:25:25
  • 关于用指针方式访问二维数组的问题 首先说明几种类型: int a[2][4] = { 1,2,3,4,5,6,7,8 };//二维数组 int **p; //二重指针跨度为sizeof(int *) int(*q)[4]; //该语句是定义一个指向数组的指针,指向含4个...
  • Python输入二维数组方法前不久对于Python输入二维数组有些不解,今日成功尝试,记以备忘。这里以输入1-9,3*3矩阵为例n=int(input())line=[[0]*n]*nfor i in range(n):line[i]=input().split(' ')print(line)使用数据...
  • java二维数组字符数组Today we will look into Two-dimensional array in java. An array is like a container that can hold a certain number of values. 今天,我们将研究Java中的二维数组。 数组就像可以容纳...
  • 今天我们来聊聊二维数组及其二维数组的动态内存分配关知识。 1.数组的基本定义 我们都知道,数组是典型的线性存储,是一种最基本的存储表示方法, 把逻辑上相邻的元素存储在物理位置相邻的存储单元中,由此得到的...
  • 常用的就是一维数组、二维数组。 一维数组 数组定义:数据就是相同数据元素的集合。 数组是一种引用数据类型。不属于基本数据类型。 (1) 如何定义(声明)一维数组? 声明格式:数据类型[] 数组名称; (2) ...
  • 我想定义一个没有初始化长度的二维数组,如下所示: matrix = 但它不起作用..... 我已经尝试了下面的代码,但它也是错误的: matrix = 错误: traceback ... indexerror: list index out of range 我哪里有问题?......
  • Python中创建二维数组

    2020-12-25 10:38:18
    Python中的列表list可以当做一维数组使用,但是没有直接的定义使用二维数组。如果直接使用a = [][]会产生SyntaxError: invalid syntax语法不正确错误。 一般Python中创建二维数组的方法是使用列表解析的方法 列表...
  • 二维数组是一个包含了多个一维数组的数组,二维数组的每一个元素都是一个一维数组。 定义格式 格式1: 数据类型[][] 数组名= new数据类型[m][n]; m:二维数组中包含的一维数组的个数 n:一维数组存储的元素个数 ...
  • // 二维数组 // 1.一个二维数组就像是若干个相同的数组放在一起,这对于存储多组数据非常有用。 // 2.一维数组(One-Dimension Array) // 3.二维数组(Two-Dimension Arrays) // 4.处理二维数组的时候直接当作一维数组...
  • C语言 二维数组

    千次阅读 2016-01-15 22:21:24
    # 二维数组基本概念 ##1.二维数组的基本概念 - 所谓多维数组就是一个一维数组的每个元素又被声明为一 维数组,从而构成二维数组. 可以说二维数组是特殊的一维数组。...二维数组定义 - 格式:  +数据类型 数组名[一维
  • C/C++二维数组总结

    万次阅读 多人点赞 2018-12-16 16:01:29
    1、关于定义二维数组 先说在前面,一般的我们说的C/C++中的二维数组定义在栈中的二维数组。比如定义了一个array[3][4],那就指的是定义了一个三行四列的矩阵形状的二维数组,如下图所示。这样的矩阵在内存中是以...
  • 正确初始化二维数组

    千次阅读 2013-08-26 18:42:37
    以下不能对二维数组正确初始化的语句是_C__。 A static int a[2][3]={0}; B static int a[ ][3]={{1,2},{0}}; C static int a[2][3]={{1,2},{3,4},{5,6}} D static int a[ ][3]={1,2,3,4,5,6}; 为...
  • java中二维数组定义

    2019-09-27 17:38:52
    想当于定义了一个3*4的二维数组,数组长度为3,二维数组中每个元素又是一个长度为4的数组 2、int arr[][]=new int[3][]; 表示定义了一个二维数组arr,里面包含3个数组,每个数组的元素长度不确定 3、int arr[][]={{1,...
  • 如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图如图![图片](https://img-ask.csdn.net/upload/201604/19/1461001446_780293.png)

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 62,479
精华内容 24,991
关键字:

对二维数组的正确定义是