首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
数组A中,每个元素的长度为3个字节,行下标i从1到8,列下标
[单选题]
数组
A
中,每个元素的长度为
3
个字节,行下标
i
从
1
到
8
,列下标
j
从
1
到
10
,从首地址
SA
开始连续存放在存储器内,该数组按行存放时,元素
A[8][5]
的起始地址为(
)。
SA+141
SA+144
SA+222
SA+225
查看正确选项
添加笔记
求解答(26)
邀请回答
收藏(691)
分享
20个回答
添加回答
2
fudanyuan
一个m*n的二维数组,A[i][j]代表i行j列元素的起始地址,
每个元素所占字节数为b,
那么按行优先:A[i][j] = A[p][q] + ((i - p) * n + (j - q)) * b;按列优先:
A[i][j] = A[p][q] + ((j - q) * m + (i - p)) * b。对于这道题来说,p=q=1,所以选择C。
发表于 2018-10-09 10:42:32
回复(0)
更多回答
117
LemonSkin丶
陷阱:起始地址为上一地址的结束。小心点
发表于 2017-10-23 01:54:25
回复(7)
58
晴时
首先,本题的数组是从A[1][1]开始的,也就是说和所谓的数组从零开始没什么关系。
A[1][1]的起始地址为SA,那么A[1][2]为SA+3.....A[2][1]为SA+3*10.....A[i][j]为SA+((i-1)*10+(j-1))*3。
那么A[8][5]的起始地址就是SA+ (7*10+4)*3=SA+222.
发表于 2017-09-27 00:20:46
回复(0)
17
め吖児♪
(7*10+4)*3=222
起始地址为上一地址的结束地址
发表于 2017-08-19 11:42:44
回复(2)
11
Monika-蕊
已知数组a[m][n],m,m都是从0开始。求a[i][j] (1).按行优先 解: a[i][j]=a[0][0]+(i*n+m) *字节数; (2).按列优先 解:a[i][j]=a[0][0]+(j*m+n)*字节数;
编辑于 2017-08-30 12:27:24
回复(4)
8
小y虫-周伯通
A[n,m]二维数组,A[i][j]的地址是
起始地址+ ((i-第一个元素索引)*m + (j-第一个元素索引)) * 元素大小
如果A是从0开始,则A[i][j]的地址= SA + ((8-0)*10 + (5-0)) * 3 = SA + (85)*3 = SA + 255
如果A是从1开始,则A[i][j]的地址= SA + ((8-1)*10 + (5-1)) * 3 = SA + 74*3 = SA + 222
发表于 2022-03-30 17:58:40
回复(0)
8
漕河泾
做这一类题目注意:起始地址还是存储地址,如果是起始地址就输222,存储地址就是225,教训呀!!!!!!!!!!!
编辑于 2019-05-11 09:55:44
回复(0)
2
mmms丶
起始地址为上一地址的结束地址!
发表于 2022-04-10 13:02:15
回复(0)
1
梦雨96
存储器存储数组按行存储,元素A[8][5]前面有7行,每行10个元素,第八行有4个元素,则就有7*10+4 = 74个元素,每个元素三个字节,则74*3 = 222
发表于 2022-07-19 16:51:48
回复(0)
1
牛客769881134号
太坑了,做的时候题目都不显示,只有答案
发表于 2022-02-17 21:58:34
回复(0)
1
OPPO学长
算出来SA+225是这个元素的结束地址。。。。但是求的是起始地址,所以-3
发表于 2019-07-10 11:22:37
回复(0)
0
牛客858633671号
这题先把A[8][1]和A[1][1]对齐 共7行 10列 对齐后差距是7✘10✘3=210 从A[8][1]到A[8][5]差距为4✘3=12 总共为210+12=222 再加上SA 总共为SA+222
发表于 2023-11-10 16:56:08
回复(0)
0
牛客223473501号
SA+3*(75-1)=SA+222
从A[1][1]查到A[8][5]共有75个元素,由于A[1][1]的地址为SA,所以上式中括号中要减去1 。
发表于 2023-10-29 20:50:16
回复(0)
0
逍遥2货
我题目呢?啊
发表于 2023-10-03 09:38:02
回复(0)
0
牛客296133318号
又被坑了,就是不长记性嘞
sa+222 不是 225!!! sa是第一个位置的基址。既然加了,就不要把这个位置在重新加一遍了。
数组位置有了基址,就要少加一个空间的位置
发表于 2022-08-31 15:36:11
回复(0)
0
迟缓的布莱克觉醒了
A[1][1]=SA
A[8][5]=A[1][1]+((8-1)*10+(5-1))*3=SA+74*3=SA+222
发表于 2022-08-22 15:48:43
回复(0)
1
eurekais
<p>从上一个地址的结束开始即前七行的全部+第八行的前4个元素对应字节的地址为:(7*10+4)*3=222</p><p><br></p>
发表于 2020-11-25 20:54:39
回复(0)
0
李秋风
坑啊,**
发表于 2020-10-29 13:56:41
回复(0)
0
TonyWang972
有一说一,不应该是219吗答案
发表于 2020-01-06 16:44:18
回复(2)
0
大雄好叻
上一地址[7][4]
编辑于 2018-10-15 10:09:45
回复(1)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
数组
上传者:
蜡蜡
难度:
20条回答
691收藏
15255浏览
热门推荐
相关试题
明明的随机数
数组
评论
(3692)
来自
华为研发工程师编程题
5.下列判断正确的是( )
资料分析
言语理解与表达
资料分析
评论
(1)
已知a
40
=...
京东
职能
2019
财务
保险
评论
(1)
《拳皇97》最后BOSS是谁?
游戏常识
评论
(1)
《魔兽世界》中,下列不属于玩家可以...
游戏常识
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题