gpt4 book ai didi

c - C 中的嵌套 for 循环无法按预期工作

转载 作者:太空宇宙 更新时间:2023-11-04 05:02:09 24 4
gpt4 key购买 nike

for (i = 2; i < input; i++){
for (d = 2; d < input; d++){
product = d*i;
printf("%d\n", product);
break;
}
}

这段代码是我对 C 类介绍的家庭作业问题的解决方案的一部分。实际问题是涉及素数的问题,但我想到的解决方案需要使用像这样嵌套的 for 循环。不过,我无法让他们正确行事。我假设使用数组会简化事情,但我们还没有采用它们并且不允许在我们的解决方案中使用它们。无论如何:

例如,如果我的输入是 10,则 i 的值应该是 {2,3,4,5,6,7,8,9}。 d 的值也应该是 {2,3,4,5,6,7,8,9}。

我希望这个循环做的是将每个 i 乘以 d 的完整循环:

2*2
2*3
2*4
.
.
.
2*9
3*2
3*3
.
.
.
.

及以后。但是,它只是将 i 乘以 d = 2,我得到以下结果:

4
6
8
10
.
.
.
20

我做错了什么?

最佳答案

for (d = 2; d < input; d++){
product = d*i;
printf("%d\n", product);
break; // because of this line the loop breaks on first iteration.
}

从您的代码中删除 break;,它将起作用。

关于c - C 中的嵌套 for 循环无法按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17367315/

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