请高手赐教:求C++中构造螺旋方阵的程序.谢谢.(所谓螺旋方阵,见详细提问)比如说输入一个4,则输出1 2 3 412 13 14 511 16 15 610 9 8 7若输入9,则输出1 2 3 4 5 6 7 8 932 33 34 35 36 37 38 39 1031 56 57 58 59 60
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/17 17:44:27
请高手赐教:求C++中构造螺旋方阵的程序.谢谢.(所谓螺旋方阵,见详细提问)比如说输入一个4,则输出1 2 3 412 13 14 511 16 15 610 9 8 7若输入9,则输出1 2 3 4 5 6 7 8 932 33 34 35 36 37 38 39 1031 56 57 58 59 60
请高手赐教:求C++中构造螺旋方阵的程序.谢谢.(所谓螺旋方阵,见详细提问)
比如说输入一个4,则输出
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
若输入9,则输出
1 2 3 4 5 6 7 8 9
32 33 34 35 36 37 38 39 10
31 56 57 58 59 60 61 40 11
30 55 72 73 74 75 62 41 12
29 54 71 80 81 76 63 42 13
28 53 70 79 78 77 64 43 14
27 52 69 68 67 66 65 44 15
26 51 50 49 48 47 46 45 16
25 24 23 22 21 20 19 18 17
答得好一定再加分.
请高手赐教:求C++中构造螺旋方阵的程序.谢谢.(所谓螺旋方阵,见详细提问)比如说输入一个4,则输出1 2 3 412 13 14 511 16 15 610 9 8 7若输入9,则输出1 2 3 4 5 6 7 8 932 33 34 35 36 37 38 39 1031 56 57 58 59 60
#include
#include "stdafx.h"
void main()
{
int x[25][25];
int n = 3;//最外圈每行元素个数
int v=1; //待写入的数值,不断加1
int i0; //每一圈左上角那个位置列值(起标志作用),范围0 to n/2
int i1; //每一圈右上角那个位置列值(起标志作用)
int ii, //写入数据时每行上列的位置
jj; //写入数据时每列上行的位置
int j0, //每一圈右上角那个位置行值(起标志作用)
j; //写入的圈数
printf("请输入 n, n为3 到 25\n");
scanf("%d",&n);
i0=0; i1 = n - 1;
for (j=0;j