📄 8-2-9.c
字号:
/*中国系统分析员顾问团,http://www.csai.cn*/
/*程序员下午考试指南书籍源码*/
#include <stdio.h>
#define SIZE 10
int a[SIZE] [SIZE], k;
makeline (int row_start, int col_start, int row_end) { /*完成矩阵一条斜线的整数填写*/
int i, j, sign = row_start<row_end?1:-1;
for (i=row_start, j=col_start;(row_end-i)*sign>=0; i+=sign,j+=sign)
a[i][j] = k++;
}
makeArray (int n) { /* 完成矩阵每条斜线的整数填写*/
int d;
for (d=1; d<=2*n+1; d++)
if (d <= n)
if (d%2) makeline(n,d-1,n+1-d); else makeline(n+1-d,0,n);
else if (d%2) makeline(2*n-d+1,n,0); else makeline(0, d-n-1, 2*n-d+1);
}
main() {
int i, j, n, N;
for (N=3; N<=SIZE; N++) {
k = 1;
makeArray (n=N-1);
printf ("\nN = %d;\n",n+1);
for (i = 0; i<=n; i++) {
for (j= 0; j<=n; j++)printf("%4d",a[i][j]);
printf ("\n");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -