Run ID 作者 问题 语言 测评结果 Time Memory 代码长度 提交时间
85856 梁敖铭 螺旋矩阵 C Presentation Error 1 MS 204 KB 852 2024-07-20 21:11:44

Tests(0/10):


Code:

#include<stdio.h> int main(){ int i;//控制轮数 int j;//控制坐标 int k=1;//k从1加到n*n int m;//轮数 int n;//阶数 scanf("%d",&n);//输入阶数 int matrix[n][n];//为n*n的矩阵开辟空间 //计算循环轮数 if(n%2==0){ m=n/2; } else{ m=n/2+1; } for(i=0;i<m;i++){//m轮顺时针圈 for(j=i;j<n-i;j++){//向右输出 matrix[i][j]=k++; } //注意:从i+1开始递增,即往下挪一位才是下一个数 for(j=i+1;j<n-i;j++){//向下输出 matrix[j][n-i-1]=k++; } for(j=n-i-2;j>=i;j--){//向左输出 matrix[n-i-1][j]=k++; } for(j=n-i-2;j>=i+1;j--){//向上输出 matrix[j][i]=k++; } } //输出螺旋矩阵 for(i=0;i<n;i++){ for(j=0;j<n;j++){ printf("%-4d",matrix[i][j]); } printf("\n");//这里记得换行 } return 0; }