黑马程序员技术交流社区

标题: 关于多维数组 [打印本页]

作者: lyricdon    时间: 2015-5-15 19:13
标题: 关于多维数组
今天考试有一题,我选的D,不知道对错,求解释
main()
{
    int  a[4][4]={{1,3,5},{2,4,6},{3,5,7}};
    printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]);
}
A. 0650          B. 1470              C. 5430            D. 输出值不定




作者: su199325    时间: 2015-5-17 16:50
这个啊a[4][4]写全了是这样:{{1,3,5,0},{2,4,6,0},{3,5,7,0},{0,0,0,0}},所以就很清楚了,分别对应0,6,5,0
作者: cui0wei0    时间: 2015-5-17 17:00
你可以把这个看成(a[0])[3]就好理解了.
a[0]={1,3,5,0}, a[0][3]就是第(0+1)个数组中的第(3+1)个元素, 所以就是0
作者: wuyu1992    时间: 2015-5-17 17:58
已对数组进行了初始化,没有赋值的,便用0补。所以楼上所说正确
作者: hehelaicaicai    时间: 2015-5-19 10:38
这题我刚开始看的时候,也选了D,主要是纠结在没有赋值的元素,是不是值是不确定的。翻了下以前记的笔记,结果是这样的:在定义数组的时候进行初始化,则没有赋值的元素,值为0。所以是选A
作者: kansiliyundi    时间: 2015-5-19 21:22
为啥我觉得要选c   可能我基础还不够过关




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2