在某在线笔试遇到的题目就整理了下笔记来写下这个一些部分矩阵的转换问题。
问题描述:
输入:
123
894
765
输出:123456789
#include <stdio.h>
int main(int argc, char *argv[])
{
int min, max; //分别指向两个对角,并向内收缩
int i, j, n, a[100][100]; //定义足够大的数组
printf("请输入矩阵的阶及矩阵...\n");
scanf("%d", &n);
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
scanf("%d", &a[i][j]);
}
for(min=0,max=n-1; min<=max; min++,max--) //嵌套收缩
{
for(i=j=min; j<=max; j++) //从左到右
printf("%d ", a[i][j]);
for(i=min+1,j=max; i<=max; i++) //从上到下
printf("%d ", a[i][j]);
for(i=max,j=max-1; j>=min; j--)