1  14   15  28  29
2  13   16  27  30
3  12   17  26
4  11   18  25
5  10   19  24
6  9    20  23
7  8    21  22如何能够实现1到30 如上的排列?

解决方案 »

  1.   

    告诉你一个方法
    先把你的数放到一个二维数组里
    然后循环把数插进去
    1,2,3,4,5,6,7
    8,9,10,11,12,13,14
    15,16,17,18,19,20,21
    22,23,24,25,26,27,28
    29,30
    然后对1,3,5也就是积数行做倒序
    把行,列对换就可以了考你的数据结构的,练练有好处二维数组用ArrayList
      

  2.   

    很土的一个循环 
    写着玩的 StringBuilder sbx = new StringBuilder();
                for (int i = 0; i < 8; i++)
                {
                    a1 = i + 1;
                    for (int j = 0; j < 5; j++)
                    {
                        if (j == 0)
                        {
                            a1 = a1;
                        }
                        else if (j % 2 == 0)
                        {
                            a1 = a1 + 1 + 2 * i;
                        }
                        else
                        {
                            a1 = a1 + 13 - 2 * i;
                        }                    sbx.Append(a1.ToString());
                        sbx.Append(" ");
                        if (j == 5)
                        {
                            sbx.Append("\n");
                        }
                       
                    }
                }
                    textBox1.Text = sbx.ToString();