编程题问题
(2)方阵填数问题描述:
在一个N*N的方阵中,填入1,2,...,N*N个数,并按要求构成如下的格式:
| N=5时 |
| 13 14 15 16 1 |
| 12 23 24 17 2 |
| 11 22 25 18 3 |
| 10 21 20 19 4 |
| 9 8 7 6 5 |
输入格式:
一个整数N。
输出格式:
一个N*N的方阵。
输入案例:
5
输出案例(Tab键对齐):
13 14 15 16 1
12 23 24 17 2
11 22 25 18 3
10 21 20 19 4
9 8 7 6 5
https://blog.csdn.net/bulbboy/article/details/83658334 螺旋方阵
https://blog.csdn.net/qq_41219157/article/details/78821724 https://www.so.com/s?src=360chrome_newtab_search&q=螺旋方阵 本帖最后由 bilbil路陌人 于 2020-1-26 12:47 编辑
人造人 发表于 2020-1-25 22:51
螺旋方阵
https://blog.csdn.net/qq_41219157/article/details/78821724
emm 谢谢zltzlt,我学习了,并成功改编:
#include<stdio.h>
int main()
{
int N,i,j,k,z,c,m = 1;
printf("请输入n:");
scanf("%d",&N);
int a = {0};
for(c = 0;c<=N/2+1;c++)
{
for(i = c;i<=N-c-1;i++)
{
a = m++;
}
for(j = c;j<=N-c-2;j++)
{
a = m++;
}
for(k = N-c-2;k>=c+1;k--)
{
a = m++;
}
for(z = c;z <= N-c-2;z++)
{
a = m++;
}
}
for(i = 0;i<N;i++){
for(j = 0;j <N;j++){
printf("%3d",a);
}
printf("\n");
}
return 0;
}
页:
[1]