gpt4 book ai didi

c - 查找 3 位数字的所有可用组合

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:41:21 26 4
gpt4 key购买 nike

请帮助我了解如何检查我的号码是否相同,但顺序不同。

void ft_print_comb(void)
{
int hun;
int doz;
int uni;

hun = 0;
doz = 1;
uni = 2;

solver(hun, doz, uni);
}
void print( char f, char se, char thi)
{
ft_putchar(f);
ft_putchar(se);
ft_putchar(thi);
ft_putchar(',');
}
void solver(int x, int y, int z)
{
while (x < 9){
while (y<8){
while (z<7){
if (x < y && y < z ){
print(x, y, z);
}
z++;
}
y++;
}
x++;
}
}

创建一个函数,显示三个不同数字的所有不同组合升序,按升序排列 - 是的,重复是自愿的。

012, 013, 014, 015, 016, 017, 018, 019, 023, ..., 789

987 不存在,因为 789 已经存在。999 不存在,因为数字 9 出现了不止一次。

最佳答案

最简单的方法是确保您永远不会构造此类重复数字。这是一个例子:

int main(void){
int i, j, k;
for (i = 0; i <= 9; i++) {
for (j = i+1; j <= 9; j++) {
for (k = j+1; k <= 9; k++) {
printf("%d%d%d\n", i, j, k);
}
}
}
}

在上面的示例中,您将以相同的顺序获得所有可能的非重复数字组合。它将始终保证 i < j < k;

您也可以找到其他方法。

关于c - 查找 3 位数字的所有可用组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52425440/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com