我试图得到这样的输出:
4然后5然后6然后7然后8然后9然后10然后11然后12然后13。
我面临的最大挑战是确保"然后"不会出现在最后一个数字(13)之后。
class Program
{
static void Main(string[] args)
{
int start;
for(start = 4; start<=13; start++)
Console.Write(start +" then " );
Console.ReadKey();
}
}
答案 0 :(得分:2)
您可以简单地为13
添加条件,因为您不希望在其之后添加then
;
for (start = 4; start <= 13; start++)
{
if(start == 13)
{
Console.Write(start);
}
else
{
Console.Write(start + " then ");
}
}
Outout将是;
4然后5然后6然后7然后8然后9然后10然后11然后12然后13
答案 1 :(得分:2)
使用String.Join
组合您的值。它只在元素之间添加了分隔符:
Console.Write(String.Join(" then ", Enumerable.Range(4, 10)));
注意:这使用Enumerable.Range创建从4开始的10个连续数字。此示例适用于.NET 4及更高版本,早期版本需要字符串数组作为第二个参数(即.Select(x => x.ToString()).ToArray()
)。
答案 2 :(得分:1)
您可以尝试使用以下代码:
for (start = 4; start < 13; start++)
{
Console.Write(start + " then ");
}
Console.Write(start);
希望它有所帮助!
答案 3 :(得分:1)
试试这个:
class Program
{
static void Main(string[] args)
{
string result = "4";
for(int start = 5; start <= 13; start++)
{
result += " then" + start;
}
Console.Write(result);
Console.ReadKey();
}
}
答案 4 :(得分:1)
在我继续尝试之后,我出现了这个似乎可以解决问题的代码。
int start;
int start1 = 13;
for (start = 4; start <= 12; start++)
Console.Write(start + " then ");
Console.Write(start1);
Console.ReadKey();
答案 5 :(得分:0)
如果你想要一个班轮,这应该可以解决问题:
string result = string.Join(" then ", Enumerable.Range(4, 10).ToArray());
答案 6 :(得分:-1)
试试这个:
for (int start = 4; start <= 13; start++)
{
if (start == 13 )
{
Console.Write("13");
}
else
{
Console.Write(start + " then ");
}
Console.ReadKey();
}