Ken*_*hin 1 c variables for-loop
我有一个关于j这个嵌套循环内部值的问题.
for (potentialSum=1; potentialSum<=m; potentialSum ++)
{
for (j=1;j<=n;j++)
{
if (potentialSum == 2) {
printf("j:%d in loop\n", j);
}
}
C[potentialSum]=(j<=n) ? j : (-1);
if (C[potentialSum] == -1) {
printf("j:%d n:%d \n", j , n);
}
}
Run Code Online (Sandbox Code Playgroud)
n = 0且m = 25.
因此,当我使用前面提到的n和m值运行此循环时,我得到如下输出:
j:1 in loop
j:2 in loop
j:3 in loop
j:4 in loop
j:5 in loop
j:6 in loop
j:7 in loop
j:8 n:7 // Outside of loop
Run Code Online (Sandbox Code Playgroud)
我的问题是何时/如何j增加到8,如果n=7?
当这只发生potentialSum = 2,完整的代码点击这里,为输入的副本点击这里.
感谢您提前获得所有帮助,我真的没有看到j循环外的7到8.
for (j=1;j<=n;j++) //where n is 7
Run Code Online (Sandbox Code Playgroud)
for(声明;比较(条件检查),增量/减量)
在声明之后,比较值,并在最后它的递增(j++)
当j=7它检查条件j<=n是否为真时它会进入循环内部.并且它会增加j++.
现在j将成为现在的价值8.下次它将检查条件j<=n是否为假,因此它将退出循环,但j仍将保留8.