带有两个变量的“for”循环,每次迭代递增一次,每隔一次迭代递增一次

时间:2014-03-04 15:27:54

标签: c++

我似乎无法找到一种方法来编写一个包含两个变量(ij)的“for”循环。我希望i每次都加1,j通过每隔i递增一次加1来递增。有任何想法吗? (我已经尝试过嵌套循环,或者在相同的条件语句中初始化它们。)

2 个答案:

答案 0 :(得分:3)

这是一种愚蠢的方式:

for (int i = 0, j = 0; i < N; j += i % 2, ++i) {}

这会在j具有奇数值的每次迭代结束时递增i

答案 1 :(得分:0)

一种方法是执行以下操作:

for(i=0, j=0; i<max; j += ((++i)&1) ){

}
j为偶数时,

这里i会增加,如果你想在j为奇数时增加i,那么使用后增量

相关问题