www.5213.net > 若有定义int A [][3]={1,2,3,4,5,6,7,8,9},则表达式sizE oF(A)...

若有定义int A [][3]={1,2,3,4,5,6,7,8,9},则表达式sizE oF(A)...

对于一个整型二维数组,size of(a)=9 即实际内容所占的大小 a[0] 是指第0行的3个元素 因而size of(a[0])=3 最后答案就是 9/3=3

关键是理解这句话的意思,首先定义了一个数组.a[ ][ 3]={1,2,3,4,5,6,7,8,9}从此处可以看出是个三行三列的数组.sizeof(a)表示的是整个二维数组的字节数.因为a[0]代表的是第一行的地址,所以此处sizeof(a[0])指的是一行的字节数,那么sizeof(a)/sizeof(a[0])求出来的也就是此数组的行数.即结果为3;另外你定义了一个一维数组,比如a[]={1,2,3,4,5};你用sizeof(a)/sizeof(a[0])答案就是5,可以自己试验一下

表达式sizeof(a)/(sizeof(int)*4)的值为3sizeof(a)是a数组所占内在的字节数,int a[][4]={1,2,3,4,5,6,7,8,9,10,11}等价于int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,0};它是一个3行4列的int数组.sizeof(int)*4 是一个4个元素的int数组所占的字节数.所以,表达式sizeof(a)/(sizeof(int)*4)的值就是a数组的行数,值为3.

int a[3][4]={1,2,3,4,5,6,7,8,9};,相当于int a[3][4]={{1,2,3,4},{5,6,7,8},{9,0,0,0}}; 因此,a[1][3]=8, a[2][3]=0;

这是个二维数组.int a【】【】第一个中括号表行数,从0开始;第二个代表列,也从0开始;数组初始化没有给出初值的数组元素被编译器自动赋值为0;int a[][3]={1,2,3,4,5,6,7,8,9,10}实际为:int a[][3]={1,2,3, 4,5,6, 7,8,9 ,10,0,0} 四行三列.

你这是定义一个3行4列的数组啊.数组下标从0开始算,a[1]就是第二列.a[1][3]就是第二列第4个数字啊.不就是8吗

若有定义:int a[]={1,2,3,4,5,6,7,8,9,10,11,12},*p[3],m;,阅读下面程序段,写出运行结果: for(m=0;m<3;m++) p[m]=&a[m*4]; printf(“%d\n“,p[2][2]); 程序运行结果:请问答案是多少,解释一下运行过程 谢谢!问题补充:谢谢各位的指教!

这个考的是C语言里指针部分的知识,答案 A . B表示元素a[6],即7;C是一个表达式;D表示a[5]的地址,不是元素.

第一维长度可由第二维的长度推出行数为3,即3行3列的数组,前8个数赋值.选A

相关搜索:

网站地图

All rights reserved Powered by www.5213.net

copyright ©right 2010-2021。
www.5213.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com