C# 星辰广场
但我想要这个:C# 星辰广场,c#,C#,但我想要这个: *** * *** sameone能帮我找到这个代码吗???类程序 *** **** * * * * *** or * * **** { 静态void Main(字符串[]参数) { var n=int.Parse(Console.ReadLine()); 对于(int row=1;rowclass程序 { 静态void Main(字符串[]参数) { var n=int.Parse(Console.ReadLine()
***
*
***
sameone能帮我找到这个代码吗???类程序
*** ****
* * * *
*** or * *
****
{
静态void Main(字符串[]参数)
{
var n=int.Parse(Console.ReadLine());
对于(int row=1;rowclass程序
{
静态void Main(字符串[]参数)
{
var n=int.Parse(Console.ReadLine());
对于(int row=1;row您可以在第二个循环中更改控制台。WriteLine
,如下所示:
class Program
{
static void Main(string[] args)
{
var n = int.Parse(Console.ReadLine());
for (int row = 1; row <= n; row++)
{
for (int col = 1; col <= n; col++)
{
if (row == 1 || row == n)
{
Console.Write("*");
}
else
{
if (col == 1 || col == n)
{
Console.Write("*");
}
else
{
Console.Write(" ");
}
}
}
Console.WriteLine();
}
Console.ReadKey();
}
}
类程序
{
静态void Main(字符串[]参数)
{
var n=int.Parse(Console.ReadLine());
对于(int i=0;i
您可以更改控制台。在第二个循环中写入线
,如下所示:
class Program
{
static void Main(string[] args)
{
var n = int.Parse(Console.ReadLine());
for (int row = 1; row <= n; row++)
{
for (int col = 1; col <= n; col++)
{
if (row == 1 || row == n)
{
Console.Write("*");
}
else
{
if (col == 1 || col == n)
{
Console.Write("*");
}
else
{
Console.Write(" ");
}
}
}
Console.WriteLine();
}
Console.ReadKey();
}
}
类程序
{
静态void Main(字符串[]参数)
{
var n=int.Parse(Console.ReadLine());
对于(int i=0;i
应执行以下操作:
class Program
{
static void Main(string[] args)
{
var n = int.Parse(Console.ReadLine());
for (int i = 0; i < n - 1; i++)
{
Console.Write("*");
}
for (int i = 0; i < n - 1; i++)
{
Console.WriteLine(i == 0 ? "*" : "*" + string.Empty.PadLeft(n - 2) + "*");
}
for (int i = 0; i < n; i++)
{
Console.Write("*");
}
}
}
对于循环和控制台,是否有一些不需要就可以轻松处理的琐碎情况。编写s等?是的,长度0
和1
似乎非常简单。如果我返回了负值的空方块,我也会对0
大小的方块执行相同的操作。因此,我更改了以前的设置代码至:
if (squareSideLength < 0)
return "";
这个故事的寓意是:首先要处理无效的数据或琐碎的案例。很多时候,琐碎的案例也可能是会使您的一般解决方案复杂化的角落案例,请尽快将它们排除在外
好的,现在让我们想想正方形是什么样子:
if (squareSideLength == 1)
return c.ToString();
这个模式看起来很明显。一个正方形由两行组成,其中包含指定数量的星星,0
或更多行只包含两颗星星,并且squaresidentLength-2
之间有空格。那么,它只有两种类型的行,让我们先构建它们:
**
**
***
* *
***
****
* *
* *
****
太好了!我们有了我们的积木,现在让我们来建造我们的广场:
那么这是怎么回事呢?我们只需添加一个水平箭头
,然后添加平方边长-2
水平箭头
,最后再添加一个水平箭头
瞧,我们有了漂亮的小ASCII方块:
var horizontalOuterRow = new String(c, squareSideLength);
var horizontalInnerRow = $"{c}{new string(' ', squareSideLength - 2)}{c}";
希望这个小小的答案能帮助你
记住,要编写好代码,把每件事都分解成很小的任务,一次处理一件。想想你是如何手工完成的,并以这种方式编写。一旦你的代码能够正常工作,你就有时间来看看你是否需要优化、重构等你的代码。但关键是让它尽可能清晰地与代码一起工作。以下内容uld do:
class Program
{
static void Main(string[] args)
{
var n = int.Parse(Console.ReadLine());
for (int i = 0; i < n - 1; i++)
{
Console.Write("*");
}
for (int i = 0; i < n - 1; i++)
{
Console.WriteLine(i == 0 ? "*" : "*" + string.Empty.PadLeft(n - 2) + "*");
}
for (int i = 0; i < n; i++)
{
Console.Write("*");
}
}
}
对于循环和控制台,是否有一些不需要就可以轻松处理的琐碎情况。编写s等?是的,长度0
和1
似乎非常简单。如果我返回了负值的空方块,我也会对0
大小的方块执行相同的操作。因此,我更改了以前的设置代码至:
if (squareSideLength < 0)
return "";
这个故事的寓意是:首先要处理无效的数据或琐碎的案例。很多时候,琐碎的案例也可能是会使您的一般解决方案复杂化的角落案例,请尽快将它们排除在外
好的,现在让我们想想正方形是什么样子:
if (squareSideLength == 1)
return c.ToString();
这个模式看起来很明显。一个正方形由两行组成,其中包含指定数量的星星,0
或更多行只包含两颗星星,并且squaresidentLength-2
之间有空格。那么,它只有两种类型的行,让我们先构建它们:
**
**
***
* *
***
****
* *
* *
****
太好了!我们有了我们的积木,现在让我们来建造我们的广场:
那么这是怎么回事呢?我们只需添加一个水平箭头
,然后添加平方边长-2
水平箭头
,最后再添加一个水平箭头
瞧,我们有了漂亮的小ASCII方块:
var horizontalOuterRow = new String(c, squareSideLength);
var horizontalInnerRow = $"{c}{new string(' ', squareSideLength - 2)}{c}";
希望这个小小的答案能帮助你
记住,要编写好代码,就要把每件事都分解成非常小的任务,并一次处理一件。想想你会如何手工完成并以这种方式编写。一旦你的代码开始工作,你就有时间来看看你是否需要优化、重构等等。但是关键是让它尽可能清晰地与代码一起工作。你可以使用构造函数来创建重复字符的字符串。这使您可以简化代码以使用单个for
循环:
return squareBuilder.ToString();
var n=int.Parse(Console.ReadLine());
WriteLine(新字符串('*',n));
对于(int i=0;i
您可以使用构造函数创建重复字符的字符串。这使您可以简化代码以使用单个for
循环:
return squareBuilder.ToString();
var n=int.Parse(Console.ReadLine());
WriteLine(新字符串('*',n));
对于(int i=0;i
对于这样一个简单的问题有点过火了,但仍然很好地介绍了循环旁边的C元素的精彩解释和用法。很好done@GioraGuttsait谢谢;)是的,这太过分了,但这里的目标是向那些显然是j