求救:C语言 编程高手进!!

来源:百度知道 编辑:UC知道 时间:2024/05/17 06:44:24
下面是一个5阶的螺旋方阵.试编程打印出此形式的n(n<10)阶的方阵(顺时针方向旋进).
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
我已经做出来,大家可以把自己的做法写下来哈,大家一起交流一哈!

基本上,这需要先定义一个二维数组(矩阵)
matrix[10][10]

然后获得用户输入n(n<10),可以用这样的方式获得
int n;
printf("Please input n(n<%d): ", 10);
scanf("%d", &n);

那到n之后我们开始填充matrix,过程是这样
先把起点定在1,1位置,然后先向右填,填到1,n处,转弯,向下填,到了n,n处,再转为向上。。。。这样一直旋转的填下去,直到填入的数字是n*n,这也就意味着填写结束了

最后,输出matrix就是了。

先试试吧,有问题再补充上来。

其实代码偶已经做好了,只是不想简单的授人以鱼,希望你能体会偶的这番用心^_^

加油!
----------------------------------------------------------------------
这么快就做出来啦,不错嘛^_^

下面是我的,这里分享给大家
-----------------------------------------------------
#include <stdio.h>
//Up,Down,Left,Right
#define U 'U'
#define D 'D'
#define L 'L'
#define R 'R'

const int MAX = 10;

int main(int argc, char *argv[]){
    int matrix[MAX][MAX];
    int n, x, y, k;
    char direction; //Up,Down,Left,Right

&n