采用压缩存储方式(以行序为主存储下三角部分,且A[0][0]存放在B[1]中),则A[8][5]在B中的地址是

问题遇到的现象和发生背景

这个我算出来怎么是33,i×(i-1)/2+j

img

遇到的现象和发生背景,请写出第一个错误信息
用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%
运行结果及详细报错内容
我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%
我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”

在这种存储方式下,A[8][5]在B中的地址为 $\frac{8 \cdot (8 + 1)}{2} + 5 = 42$。

因为A是10阶对称矩阵,下三角部分有 $\frac{10 \cdot (10 + 1)}{2} = 55$ 个数,存储在B数组中。A[8][5]存储在第 $\frac{8 \cdot (8 + 1)}{2} + 5 = 42$ 个数,所以A[8][5]在B中的地址为42。

这种存储方式下,A[8][5]在B中的地址为($\frac{8\cdot (8 + 1)}{2}+5)=42$。
因为A是10阶对称矩阵,下三角部分有($\frac{10\cdot (10 + 1)}{2})=55$个数,存储在B数组中。
A[8][5]存储在第($\frac{8 \cdot (8 + 1)}{2}+5)=42$个数。
所以A[8][5]在B中的地址是42。
望采纳!
谢!

这个计算没必要死记硬背,遇到直接推导就行,比如你用一个三阶的进行验证,你的公式大体思路上没有问题,可能就是少了一个1或者多了一个1这种,然后用四阶简单验证几个就可以了。