`
steven-zhou
  • 浏览: 207882 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

根据给定的边长,打印正方形的数字自增矩阵

阅读更多
// 比如边长为7时:
  1 1 1 1 1 1 1
  1 2 2 2 2 2 1
  1 2 3 3 3 2 1
  1 2 3 4 3 2 1
  1 2 3 3 3 2 1
  1 2 2 2 2 2 1
  1 1 1 1 1 1 1

include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int main(int argc, char **argv)
{
    if (argc != 2) {
        printf("usage: ./a.out <number>\n");
        exit(EXIT_FAILURE);
    }

    int     len = atoi(argv[1]);
    int     i;
    int     j;

    for (i = 0; i < len; i++) {
        for (j = 0; j < len; j++) {
            int near_i = (i + 1 < len - i) ? i + 1 : len - i;
            int near_j = (j + 1 < len - i) ? j + 1 : len - j;

            printf("%d ", near_i < near_j ? near_i : near_j);
        }
        putchar('\n');
    }

    exit(EXIT_SUCCESS);
}


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics