问答详情
源自:6-9 多维数组

运行结果有点不一样啊

https://img.mukewang.com/5ca419f800016e8a06340398.jpghttps://img.mukewang.com/5ca41a0a0001badd07410266.jpg哪里出问题了吗


提问者:取个名字好纠结啊 2019-04-03 10:28

个回答

  • 慕桂英5023831
    2020-07-11 19:25:50

    使用第二种方式初始化方式声明并初始化二维数组arr2时,每行前面的"//"要去掉。

  • 慕的地21332321
    2019-08-30 19:46:32

    #include <stdio.h>
    int main()
    {
        //使用第一种方式初始化方式声明并初始化二维数组arr1
        int arr1[2][2] = {{10,20},{30,40}};
        //使用第二种方式初始化方式声明并初始化二维数组arr2
        //int arr2[2][2];
        //arr2[0][0] = 10;
        //arr2[0][1] = 20;
        //arr2[1][0] = 30;
        //arr2[1][1] = 40;
        return 0;    
    }
    //试试


  • love_kim3176858
    2019-07-03 11:15:50

    你这样输入的是当前数组的内存地址,如果需要输出所有元素的值,需要使用for输出。

    for(int i=0;i<2;i++){        
        for(int j=0;j<=1;j++){            
            printf("arr1[%d][%d]=%d\n",i,j,arr1[i][j]);        
            }    
       }

  • qq_昵称_54
    2019-07-02 17:55:40

    arr输出的是数组地址.arr[i][j]才是数组中一个元素的值,使用循环就是把每一个元素都输出一遍。

  • 小白学技术
    2019-05-24 14:28:35

    想要得到整个数组就得遍历,若只去一个值就需要下标

  • Majesty_x
    2019-05-10 08:17:20

    数组名表示首地址,所以你这里输出的是arr2[0][0]的内存地址编号吧,输出数组需要指定下标

  • 满眼星辰大海
    2019-04-03 17:42:23

    需要用到for循环  进行赋值