首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
若有定义;int w[3][5];,则以下不能正确表示该数组元素的表达式是( )。
若有定义;int w[3][5];,则以下不能正确表示该数组元素的表达式是( )。
admin
2013-02-23
38
问题
若有定义;int w[3][5];,则以下不能正确表示该数组元素的表达式是( )。
选项
A、*(*w+3)
B、*(w+1)[4]
C、*(*(w+1))
D、*(&w[0][0]+1)
答案
2
解析
通过—维数组名或指向维数组元素的指针来引用数组元素有两种写法:a
和*(a+i),它们是等价的。这是一种运算符之间的等价转换,就好像a-(b-C) 等价于a-b+c一样。知道了这种转换,我们可以将之扩展到二维数组甚至任意维数组上来。因为[]运算符的结合性是从左至右的,所以w
[j]等价于(w
[j],此时可以先将任意一个[]运算符转换为指针形式为:(*(w+i)[j]或*(w
+j),或者同时转换:*(*(w+i)+j)。上述几种形式都完全等价于w
[j]。选项A中,*(*w+3)可以看成*(*(w+0)+3),即w[0][3],是正确的。选项B小,因为[]运算符的优先级高于*运算符,所以*(w+1)[4]等价于*((w+1)[4]等价于 *(*((w+1)+4)),即*(*(w+5)+0),它等价于w[5][0],很明显它超过数组的范围了,故不正确。选项C等价于w[1][0],是下确的。选项D中,&w[0][0]是数组w第1个元素的地址,它等价于&*(*(w+0)+0),外面的&和*可以抵消,就好像先乘以个数,然后再除以这个数一样。所以,&w[0][0]等价于*(w+0)+0。即*w。所以原式就变为*(*w+1)等价于w[0][1],这个也是合法的。综上所述,本题应该选择B。
转载请注明原文地址:https://kaotiyun.com/show/1HJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
在深度为5的满二叉树中,叶子结点的个数为
在算法正确的前提下,评价一个算法的两个标准是【】。
在数据结构中,从逻辑上可以把数据结构分为______。
Jackson方法是一种面向【】的结构化方法。
对下列二叉树进行中序遍历的结果是______。
以下不是网络操作系统的是()
是构成C语言程序的基本单位。
以下正确的描述是:在C语言程序中______。
已知字符A的ASCII代码值为65,以下程序运行时若从键盘输入:B33<回车>,则输出结果是【】。#includemain(){chara,b;
E-R图中,矩形表示()。
随机试题
超急性排斥反应的特点有
慢性支气管炎的主要病变不包括
某男,30岁,食欲不振、周身乏力,体温39℃,肝区出现持续性胀痛,体查肝区压痛和肝肿大,右下胸部和肝区有叩击痛,X线检查示:肝脏阴影增大,右膈肌抬高和活动受限首先考虑的诊断为()
男性,17岁,上腹部撞伤7小时,腹部剧烈疼痛2小时伴恶心呕吐。查体:神清,血压75/45mmHg,全腹压痛,伴腹膜刺激征,肝区叩痛(+),移动性浊音(+)。
下列说法中正确的有()。
高层建筑地价分摊是将高层建筑物的造价分摊到所占土地上。()
专业监理工程师的职责有( )。
视频格式不包括()。
下列诗句中描写古都南京的是:
我国确定的20世纪末教育发展的总目标可以概括为“两基”“两全”“两重”,其中“两全”是指
最新回复
(
0
)