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
我究竟做错了什么?