(矩阵的乘法与旋转问题)一个x*y的矩阵A共有x行,每行有y个数,第i行第j个数是A[i,j]。定义一个x*y的矩阵A与一个y*z的矩阵B乘积是一个x*z的矩阵C, 矩阵C中C[i, k]的值是将所有A[i,j]*B[j,k], (1<=j<=y)求和的结果。给出三个整数x、y、z,两个大小分别为x*y、y*z的矩阵A、B,你需要求出A与B的乘积C顺时针旋转90度的结果。
数据范围:1<=x, y,z<=100, 输入矩阵中的非负整数大小不超过100。
输入格式:第一行三个整数x、y、z,接下来x行,每行y个整数,表示矩阵A;接下来y行,每行z个整数,表示矩阵B。
输出格式:z行,每行x个整数,表示矩阵C顺时针旋转90度的结果。
#include <cstdio>
int x,y,z,i,j,k;
int a[105][105],b[105][105],sun[105][105],ans[105][105];
int main() {
scanf("%d%d%d",&x,&y,&z);
for(i=1; i<=x; i++)
for(j=1; j<=y; j++)
scanf("%d",&a[i][j]);
for(i=1; i<=y; i++)
for(j=1; j<=z; j++)
(1);
for(i=1; i<=(2); i++)
for(j=1; j<=y; j++)
for (k=1; k<=z; k++)
(3);
for(i=1; i<=x; i++)
for (k=1; k<=z; k++)
(4);
for(i=1; i<=z; i++)
for(j=1; j<=x; j++) {
printf("%d",ans[i][j]);
if((5)) putchar('\n');
else putchar (' ');
}
return 0;
}
选择题
1) 空①处应填( )。
2) 空②处应填( )。
3) 空③处应填( )。
4) 空④处应填( )。
5) 空 ⑤ 处应填( )。