一个关于矩阵的问题

来源:互联网 发布:哪些app网络视频下载 编辑:程序博客网 时间:2024/06/05 05:31


需求: 用程序实现一个正方形矩阵,要求是: 里面元素的内容从a[0][0] 开始,逆时针从外向里写数字。

eg:  一个4x4 的矩阵,因该输出的是:

     1        2       3      4    

    12     13     14     5

    11     16     15     6

    10      9       8      7


程序如下:

#include<stdio.h>//表示为 N 阶的正方形矩阵(4~9)#define N 4   int main(){        int data = 1;int a[N][N] = {0};int i, j, k, m, n, count;count = N / 2;for(k = 0; k < count; k++){for(i = k; i < (N-k); i++ )a[k][i] = data ++ ;for(j = (k+1); j < (N-1-k); j++)a[j][N-1-k] = data ++ ;for(m = (N-1-k); m >= k; m-- )a[N-1-k][m] = data ++ ;for(n = (N-2-k); n > k; n--)a[n][k] = data ++ ;}if(N % 2 != 0)a[k][k] = N*N; //a[k][k] = data++;printf("\n");for(i = 0; i < N; i++){for(j = 0; j < N; j++){printf("%d\t",a[i][j]);}printf("\n");}return 0;}



0 0
原创粉丝点击