一个小程序,什么语言都可以,我可以读多种计算机语言

来源:百度知道 编辑:UC知道 时间:2024/06/08 00:28:36
如下矩阵:
1 2 3
8 9 4
7 6 5
这是个按顺时针方向为1~9的二维矩阵
如果换成N行的二维矩阵,如何设计一道程序,让这个矩阵存储到二维数组变量中呢

/*
写的有点不清楚,你自己看看吧,宏N是矩阵的边长。
*/
#include<stdio.h>

#define N 4
void main()
{
int a[N][N];

int i = 0 , j = 0;
int n;
int row = 0 , col = 0 ;
int rorc = 1; //rorc代表行列。1代表行,0代表列。
int dir = 1; //dir代表加减。1代表加,0代表减。
int up = -1 , down = N , left = -1 , right = N;

for( n = 1 ; n <= N * N ; n++ )
{
a[i][j] = n;
if( rorc == 1 && dir == 1 )
j++;
else if( rorc == 1 && dir == 0 )
j--;
else if( rorc == 0 && dir == 1 )
i++;
else if( rorc == 0 && dir == 0 )
i--;
else
;

if( j == right )
{
rorc = 0;
dir = 1;
up = i;

i++;
j--;
}

else if( j == left )
{
rorc = 0;
dir = 0;
down = i;

i--;
j++;
}

else if( i == down )
{
rorc = 1;
dir = 0