在C#中,我想为5位数的{1,2,3,4,5,6,7,8,9,0}
生成组合。所以,我希望得到11111,11112等的输出,直到99999.
当我搜索时,当我把它扔进控制台应用程序时,我没有得到任何可行的东西。
组合总是出现错误......
答案 0 :(得分:7)
执行for循环并从11111到99999计数:
for(int i = 11111; i<=99999; i++){
var combination = i.ToString();
Console.WriteLine(combination);
}
或者如果你想要00001到99999
for (int i = 0; i <= 99999; i++)
{
var combination = String.Format("{0:D5}", i);
Console.WriteLine(combination);
}
答案 1 :(得分:2)
从0到99999的简单计数将产生所有组合(如果你想要所有组合,你真的应该从00000开始)
答案 2 :(得分:2)
如果您正在寻找一种组合数字的方法,而不是专门用于获取序列,您可以对其进行linq查询。
var bob = new [] {1,2,3,4,5,6,7,8,9,0};
var greg =
from a in bob
from b in bob
from c in bob
from d in bob
from e in bob
select string.Concat(a, b, c, d, e);