如何在一行上显示字符串 x 次 C# [关闭]

Posted

技术标签:

【中文标题】如何在一行上显示字符串 x 次 C# [关闭]【英文标题】:How to display a string x number of times on one line C# [closed] 【发布时间】:2021-09-04 18:31:01 【问题描述】:

我需要让用户输入一个介于 1 到 80 之间的数字并让它打印出很多 * 这个数字是我设法让它打印出正确的 * 数量,而不是在一行上。

【问题讨论】:

请出示您的代码。通常你会使用循环。 string oneLine = new string('*', number);? 好吧,我只是设法将它放在我使用 Console.Writeline 的一行上,其中 Console.Write 修复了它。现在我只需要让循环绕回来。 while (1 你应该问一个新问题,真的。所以不会很快用完问题 ID! :) 不太确定回圈是什么意思 - 您想在下次打印时将光标返回到行首吗?对Console.WriteLine() 进行一次调用。你想让 counter 再次为 1 吗?只需在循环后将其设置为 1 这是否回答了您的问题Can I “multiply” a string (in C#)? 和How to print the same character many times with Console.WriteLine() 【参考方案1】:

我已经设法让它打印正确数量的 * 只是不在一行上。

我怀疑你用过Console.WriteLine

改用Console.Write


总是(总是)发布你写的代码,那是有故障的,所以我们可以看到它

【讨论】:

对不起,我问的第一个问题你是对的【参考方案2】:

这里是在一行中打印 ***** 的示例。在这个例子中,当 i 不是

for (int i=0; i<5; i++)

    Console.Write("*");

【讨论】:

不幸的是,这个赋值需要一个 while 循环和一个嵌套的 while 循环 @crazy4dev 我不在时停止循环需要对措辞进行一些修改【参考方案3】:

为了一个简单的班轮

var starString = string.Concat(Enumerable.Repeat("*", number));

或者,如果您出于任何原因需要循环

string starString = "";
for(var i = 0; i< number;i++)
     starString += "*";

【讨论】:

100 个字符串连接应该真正使用字符串生成器.. 另请参阅 Ahmed 关于使用为此设计的字符串构造器的评论

以上是关于如何在一行上显示字符串 x 次 C# [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

在 C# 中显示图像和播放声音 [关闭]

c#如何单击按钮显示另一个窗体?

c#如何单击按钮显示另一个窗体

c#如何让richtextbox某一行以红色字体显示

从另一个类中的另一个线程创建和显示 WindowsForm - C# [关闭]

c#里面如何显示下一个窗体而关闭当前窗体?