问答题
[说明]
信息处理过程中经常需要将图片或汉字点阵作旋转处理。一个矩阵以顺时针方向旋转90°后可以形成另一个矩阵,如下图所示。

流程图a描述了对n*n矩阵的某种处理。流程图b是将矩阵A顺时针旋转90°形成矩阵B的具体算法。
问答题
[问题1]
请写出以下3*3单位矩阵沿顺时针方向旋转90°后所形成的矩阵。
问答题
[问题2]
如果以下3*3矩阵沿顺时针方向旋转90°后所形成的矩阵就是原来的矩阵。
问答题
[问题3]
在上述流程图a和b所示的算法中:
(1) 矩阵A第i行第j列的元素A(i,j)被复制到矩阵B中的哪个位置?
(2) A(i,j)后来又被复制到矩阵C中的哪个位置?
(3) 填补流程图b中的空缺。
【正确答案】B(j,n-i+I) (2) C(n-i+1,n-j+1) (3) A(n-j+1,i)
【答案解析】[解析] 对于[问题1]很容易得到矩阵沿顺时针方向旋转90°后所形成的矩阵为
[*]
对于[问题2]根据顺时针方向旋转90°保持矩阵不变,可以逐步推断出一些元素的值:
[*]
对于[问题3]根据上述流程图中的算法,不难发现,矩阵A第i行第i列的元素A(i,j)被复制到B的第n-i+1列第j行,即B(j,n-i+1)。A(i,j)后来又被复制到矩阵C中的第n-i+1行第n-j+1列,即C(n-i+1,n-j+1)。流程图b中,循环开始后,应该是将A(n-j+1,i)赋给B(i,j)。