设有一个二维数组A[m][n],假设A[0][0]存放位置在600(10),A[3][3]存放位置在678(10)

设有一个二维数组A[m][n],假设A[0][0]存放位置在600(10),A[3][3]存放位置在678(10),每个元素占一个空间,问A[2][3](10)存放在什么... 设有一个二维数组A[m][n],假设A[0][0]存放位置在600(10),A[3][3]存放位置在678(10),每个元素占一个空间,问A[2][3](10)存放在什么位置?(脚注(10)表示用10进制表示,m>3)
A.658 B.648 C.633 D.653
答案选C 求这道题解决的具体过程,这里的A[2][3](10)下标从0,还是1开始
展开
 我来答
翔令j
2011-05-27 · TA获得超过421个赞
知道答主
回答量:147
采纳率:0%
帮助的人:0
展开全部
肯定是从0开始的,你看:A[0][0]存放位置在600(10),有这个就肯定是从0开始的. 据此可以列出两个式子了,从而得出N的值了.
3*N+4+600-1=678 得出N=25知道每行有多少个元素了.
A[2][3]=2*25+4+600-1=653
匿名用户
2011-05-27
展开全部
3*n+3=678-600=78。。。n=25
A[2][3]存放位置在600+2*25+3=653(10)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
老冯文库
2011-05-27 · 知道合伙人软件行家
老冯文库
知道合伙人软件行家
采纳数:1139 获赞数:8734

向TA提问 私信TA
展开全部
分析过程:

每个数组元素占用 1 个地址单元。
A[0][0]是二维数组的第一个元素,它的地址即为数组的首地址,为600。
A[3][3]是数组的第(3 * n + 4)个元素,它与A[0][0]相距(3 * n + 3)个元素的位置。
3 * n + 3 (3个整行外加第4行前面3个元素)
A[3][3]的地址 = A[0][0]地址 + 两元素相隔距离

678 = 600 + 3*n + 3
得n = 25,即数组共有25列。

同理,A[2][3]与A[0][0]相距(3 * n + 3)个元素的位置
2 * n + 3 (2个整行外加第4行前面3个元素)

A[2][3]的地址 = A[0][0]地址 + 两元素相隔距离
= 600 + 2 * 25 + 3
= 653

故答案选D。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式