定义数组 int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}} int x[][3]={1,2,3,4}前者为什么是错的,后者为什么是对的?我觉得对于后者 1,2,3,4后面可以跟很多省略掉的0,那么数组的第一维度就无法确定了,而对于前

来源:学生作业帮助网 编辑:作业帮 时间:2024/12/01 10:25:51
定义数组 int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}} int x[][3]={1,2,3,4}前者为什么是错的,后者为什么是对的?我觉得对于后者 1,2,3,4后面可以跟很多省略掉的0,那么数组的第一维度就无法确定了,而对于前
xSnP8îĂ캉PE 2\CHDqkU.i#EE$$w=ýV).tfwWowBDJY/+pY2K:}>ZBy3(fwN1EGlߣX]tE*cnhk~8ԯpʂ .iᅲԈ4bic74HBgIA  +[Y>VtVMx߆^|##tx;6O DsUȬ;i0{erRqTf#9̀1 }br qnրnlſzv5#yPXc0Z/)R@~|yв]BLb6+H4Tq5^ Cv&&J fɍExmޔ;c܊@҃x0Wheߔ9I

定义数组 int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}} int x[][3]={1,2,3,4}前者为什么是错的,后者为什么是对的?我觉得对于后者 1,2,3,4后面可以跟很多省略掉的0,那么数组的第一维度就无法确定了,而对于前
定义数组 int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}} int x[][3]={1,2,3,4}
前者为什么是错的,后者为什么是对的?
我觉得对于后者 1,2,3,4后面可以跟很多省略掉的0,那么数组的第一维度就无法确定了,而对于前者1,2,3后面也可以省略掉很多0,那么第二维度也无法确定了.

定义数组 int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}} int x[][3]={1,2,3,4}前者为什么是错的,后者为什么是对的?我觉得对于后者 1,2,3,4后面可以跟很多省略掉的0,那么数组的第一维度就无法确定了,而对于前
你的理解有一半是对的,有一半是错的.对的就是你明确了两个数组都是不确定的,错的就是你误以为0可以有无限个.
你要知道第一维度和第二维度都代表什么.前面代表数组有几行,后面代表每行有几个元素.
如果int [][3] = {1,2,3}那么系统知道了每行有几个,就可以确定数组为a[1][3];
如果int [][3] = {1,2,3,4};那么系统就确定数组为a[2][3]= {1,2,3,4,0,0};0的个数就可以被确定了.
但是如果是int [4][]={1,2,3}那么系统就不知道每行有几个,就没法确定有几个0了.
你可以试试直接定义a[]={1,2,3};是可以的.相当于a[3];

定义一个二维数组:int x[][4]={{1},{2},{3}};那么元素x[1][1]的值为? 下列数组定义错误的是 A.int x=5,a[x]; B.int aa[1]; C.int aa[2][3]; D.int a['a']; 定义一个整型数组,int a[]={1,2,3,4,5}求数组元素之和并输出 C语言若有定义int x[10]={0,1,2,3,4,5,6,7,8,9},*p1;则数组不为3的表达式是( ) 数组定义为int a[3][2]={1,2,3,4,5,6,},值为6的数组元素是a[2][1] 为什么 若定义数组int a[]={1,2,3,4,5,6};则此数组元素a[a[2]]的值为__ 定义一个整型数组,int a[]=(1,2,3,4,5,6,7,8,9,10)利用指针输出全部数组元素 定义int arr[5]={1,2,3};则引用数组元素a[4]的值是:. 23.下列合法的数组定义是________.A.int b[]=”student”; B.int b[5]={5,4,3,2,1,0};C.char b=”student”; D.char b[]={0,1,2,3,4,5};24.若定义如下变量和数组_______.int j;int x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果 定义数组 int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}} int x[][3]={1,2,3,4}前者为什么是错的,后者为什么是对的?我觉得对于后者 1,2,3,4后面可以跟很多省略掉的0,那么数组的第一维度就无法确定了,而对于前 int a[][3]={{1,0,1},{},{1,1}} 定义二维数组哪里错了? 若有数组定义 int a[4][5];,则引用*(a+1)+2表示 int a[][3]={2*3}啥意思对2*3不理解啊..不是说C语言与FORTRAN语言不同,不能给数组整体赋值嘛?以下能正确定义二维数组的是A)int a[][3];B)int a[][3]={2*3};C)int a[][3]={};D)int a[2][3]={{1},{2},{3,4}};这是原题 二维数组的问题,以下若有定义,则...若有定义 int s[][3]={1,2,3,4,5,6,7};则s数组第一维的大小是多少?为什么? 以下数组定义中错误的是()A int x[][3]={0 };B intx [2][3]={{1,23,4,5,6};A答案第二个没有省略啊 1.已有定义 int a[10],*p; 则正确的赋值语句是( ).A.p=100; B.p=a[5]; C.p=a[2]+2; D.p=a+2;2.若有定义int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则不能表示a数组元素的表达式是 ( )A.*p B.a[1] C.*a D.a[10]3.设有定义int x[6]= 1.已有定义 int a[10],*p; 则正确的赋值语句是( ).A.p=100; B.p=a[5]; C.p=a[2]+2; D.p=a+2;2.若有定义int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则不能表示a数组元素的表达式是 ( )A.*p B.a[1] C.*a D.a[10]3.设有定义int x[6]= 1.已有定义 int a[10],*p; 则正确的赋值语句是( ).A.p=100; B.p=a[5]; C.p=a[2]+2; D.p=a+2;2.若有定义int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则不能表示a数组元素的表达式是 ( )A.*p B.a[1] C.*a D.a[10]3.设有定义int x[6]=