c# 如何打印出 数字

play1982 2009-06-02 10:32:04
c# 如何打印出
比如 输入数字5 显示
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9

输入4
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
...全文
162 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zgke 2009-06-02
  • 打赏
  • 举报
回复
判断方向..

private string GetText(byte a)
{
int[,] _Value = new int[a, a];

int _Index1=0;
int _Index2=0;
int _Move = 1;
for (int i = 0; i != _Value.Length; i++)
{
_Value[_Index1, _Index2] = i+1;
switch (_Move)
{
case 1:
if (_Index2 == a - 1 || _Value[_Index1, _Index2+1] != 0)
{
_Move = 2;
_Index1++;
break;
}
_Index2++;
break;
case 2:
if (_Index1 == a - 1 || _Value[_Index1+1, _Index2] != 0)
{
_Move = 3;
_Index2--;
break;
}
_Index1++;
break;
case 3:
if (_Index2 == 0 || _Value[_Index1, _Index2-1] != 0)
{
_Move = 4;
_Index1--;
break;
}
_Index2--;
break;
case 4:
if (_Index1 == 0 || _Value[_Index1-1, _Index2] != 0)
{
_Move = 1;
_Index2++;
break;
}
_Index1--;
break;
}
}
string _Text = "";
for (int i = 0; i != a; i++)
{
for (int z = 0; z != a; z++)
{
_Text += _Value[i, z].ToString().PadLeft(a, ' ');
}
_Text += "\r\n";
}

return _Text;
}
caotoulei 2009-06-02
  • 打赏
  • 举报
回复
对于新手来说,这种问题最好自己先动动手,别人直接告诉你就木有意思了。兴趣就是从这种最基本的开始培养的。

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧