我想在C中创建一个程序,生成一个包含所有可能字符串的文件:
2个数字(从0到9) 和6个字母(从a到z)
我该怎么办?
我无法找出有多少组合
你可以帮忙吗?非常感谢答案 0 :(得分:2)
设计一种算法,将您想要的输出映射到一系列连续的数字。
在代码中实现该算法。
为系列中的每个号码调用该算法。
对于第一个数字,有10种可能性。对于这10种可能性中的每一种,第二个数字有十种可能性,前两个数字总共有100种可能性。对于这100种可能性中的每一种,第一个字母有26种可能性,前三个数字共有2,600种可能性。等等。
这是另一种方法:
设计一种算法,将所有可能的合法值置于严格的排序中,以便存在第一个值,最后一个值,并且每个值都大于或小于彼此。
在代码中实现根据您在步骤1中的算法生成“下一个”值的方法。
转到第一个合法值。
输出值。
如果这是最后一次合法输出,请停止。
使用步骤2中的代码转到下一个值。转到第4步。
很清楚你可以使用什么订单,按字母顺序排列。第一个输出是“00aaaaaa”。最后一个是“99zzzzzz”。
答案 1 :(得分:2)
至于多少组合:
范围[0,9]中的两位数字,用于10 2 的可能性。
[a,z]范围内的六位数,用于26 6 的可能性。
8-choose-2方式将两个数字放在八位总数中。 (那是28岁。)
现在将一切都增加。