111,125
社区成员
发帖
与我相关
我的任务
分享using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
var n = 10;
var m = new int[n, n];
填充一周(0, 1, m);
for (var i = 0; i < n; i++)
{
for (var j = 0; j < n; j++)
Console.Write("{0,4}", m[i, j]);
Console.WriteLine();
}
Console.ReadLine();
}
private static void 填充一周(int start, int num, int[,] m)
{
var len = m.GetLength(0);
var max = len - start - 1;
for (var j = start; j < len - start; j++)
m[start, j] = num++;
for (var i = start + 1; i < max; i++)
m[i, max] = num++;
for (var j = max; j > start; j--)
m[max, j] = num++;
for (var i = max; i > start; i--)
m[i, start] = num++;
start++;
if (start + start < len)
填充一周(start, num, m);
}
}
}
private static int iRow = 4;//行数
private static int iCol = 5;//列数
private string[,] arrStr = new string[iRow, iCol];
public Form1()//构造函数
{
InitializeComponent();
for (int i = 0; i < iRow; i++)
{
for (int j = 0; j < iCol; j++)
{
arrStr[i, j] = i.ToString() + j.ToString();
richTextBox1.AppendText(arrStr[i, j] + " ");
}
richTextBox1.AppendText("\r\n");
}
}
private void button1_Click(object sender, EventArgs e)//旋转矩阵
{
for (int i = 0; i < iCol; i++)
{
for (int j = 0; j < iRow; j++)
{
richTextBox2.AppendText(arrStr[j, i] + " ");
}
richTextBox2.AppendText("\r\n");
}
}