玩转矩阵

简介: 玩转矩阵
                      玩转矩阵
  简介:输入一个整数n,写一个n*n的矩阵,输出矩阵的环形矩阵,顺时针矩阵,逆时针矩阵。
  输入:n;
  输出:三个矩阵;
  样例输入;4
  样例输出;
  环形矩阵:
  1 2 3 4
  12 13 14 5
  11 16 15 6
  10 9 8 7
  顺时针90:
  10 11 12 1
  9 16 13 2
  8 15 14 3
  7 6 5 4
  逆时针90;
  4 5 6 7
  3 14 15 8
  2 13 16 9
  1 12 11 10
  代码:
  #include<stdio.h>
int main()
{
int i,j,k,m,t,n,s,a[20][20]={0},b;
i=j=s=1;t=-1;k=0;b=0;
scanf("%d",&n);
m=n;b=n*n;
printf(“环形矩阵:\n “);
for(;s<=b;)
{
for(;j<=n;j++)
a[i][j]=s++;
i++;j–;
for(;i<=n;i++)
a[i][j]=s++;
j–;i–;
if(t>n)
k++;
for(;j>k;j–)
a[i][j]=s++;
i–;j++;
for(;a[i][j]==0;i–)
a[i][j]=s++;
t=n;
n=n-1;j++;i++;
}
for(i=1;i<=m;i++)
{
for(j=1;j<=m;j++)
printf(”%d “,a[i][j]);
printf(”\n”);
}
printf("\n");
printf(“顺时针旋转90:\n”);
for(j=1;j<=m;j++)
{
for(i=m;i>0;i–)
printf("%d “,a[i][j]);
printf(”\n");
}
printf("\n");
printf(“逆时针旋转90:\n”);
for(j=m;j>0;j–)
{
for(i=1;i<=m;i++)
printf("%d “,a[i][j]);
printf(”\n");
}
return 0;
}


相关文章
|
2月前
10x10 矩阵
【10月更文挑战第26天】10x10 矩阵。
18 2
|
8月前
|
人工智能 小程序 BI
矩阵的转置、加和乘法写入C++
矩阵的转置、加和乘法写入C++
76 0
|
8月前
|
索引
转置矩阵-暴力解法&一行代码
转置矩阵-暴力解法&一行代码
49 0
|
算法 Python
线代矩阵问题
线代矩阵问题
121 0
|
移动开发
半正定矩阵和正定矩阵的一些理解和补充
半正定矩阵和正定矩阵的一些理解和补充
1795 0
|
Windows
详解扬氏矩阵
详解扬氏矩阵
187 0
详解扬氏矩阵
|
机器学习/深度学习
矩阵相关练习
矩阵相关练习
矩阵相关练习
20天刷题计划-542. 01 矩阵
给定一个由 0 和 1 组成的矩阵 mat ,请输出一个大小相同的矩阵,其中每一个格子是 mat 中对应位置元素到最近的 0 的距离。 两个相邻元素间的距离为 1 。

热门文章

最新文章