在我的课程中,我有一个谜团,编写一个递归函数,它将显示符号'%'和'#'替代用户输入的数字。 因此,如果我说用户输入了数字5,结果将如下所示:'%#%#%'。C#字符串在尝试使用递归函数时保持为空
我想我已完成大部分工作。我现在唯一的问题是,我必须显示符号的字符串在函数每次迭代时都会变为'空'。
这是我的代码:
public static string ShowGibrish(int num)
{
string s="";
while (num!=0)
{
if (num % 2 == 0)
{
s = s+ "%";
ShowGibrish(num - 1);
}
else if (num % 2 != 0)
{
s =s+ "#";
return ShowGibrish(num - 1);
}
}
return s;
}
其他学生使用StringBuilder的,以使字符串显示,与使用其他私有函数和与公众的函数调用它。但我认为我的代码也可以工作。
你是对的,但由于这是他们的家庭作业,我不认为你应该提供代码。 –
很短的实现,只是为了整洁ShowGibrish拼写有两种不同的方式,也许是正确的? –
@Alex Rosenfeld谢谢,这不像我的代码,但它的工作原理! – Dolev