您可以创建一个字符数组,然后对字符列表进行交互,每次迭代使用不同的起点。
例如在 C# 中
string Mystring = "Is There an Echo in Here?";
char[] charArray = Mystring.ToCharArray();
int k = 0;
string Echo = "";
for (int i = 0; i < (charArray.Length / 3) + 1; i++)
{
for (int j = k; i < charArray.Length; i++)
{
Echo += charArray[j];
}
Echo += Environment.NewLine;
k += 3;
}
应该产生类似这样的输出
这里有回声吗?
这里有Echo吗?
这里有回声吗?
回声在这里?
回声在这里?
o 在这里?
n 这里?
是吗?
?
只是一种可能的做事方式,您可以使用这些值来改变回声效果。
另一种解决方案是按单词而不是字符拆分字符串
string Mystring = "Is There an Echo in Here?";
string[] Words = Mystring.Split(' ');
int k = 0;
string Echo = "";
for (int i = 0; i < Words.Length / 2; i++)
{
for (int j = k; i < Mystring.Length; i++)
{
Echo += Mystring[j];
}
Echo += Environment.NewLine;
k += 2;
}
会产生以下内容
Is there an Echo in Here?
回声在这里?
在这里?