此代码处于无限循环中,并且想知道如何修复它

时间:2017-11-16 00:36:19

标签: c++

for(num <= num2; num++;)
{
    for (i = 1; i <= num; i++)

        if(num % i == 0)

        prime++;
    cout << "There are "<< prime <<" prime numbers in the given range." << endl;
}

在我看来,这应该是对的,或者我只是忽略了一些小细节。但是当我输出它时,它会继续前进。

3 个答案:

答案 0 :(得分:1)

这是错误的。 For循环有3个语句。

1) initialization. We can leave this blank if not required.
2) Condition
3) modification of variables.

你的外环缺少第一个语句。所以num&lt; = num2被视为第一个语句。

应该是

for(;num <= num2; num++)

答案 1 :(得分:1)

for(num <= num2; num++;)这是问题for(init; condition; increment),但您现在的条件是num++

答案 2 :(得分:1)

第一行的num ++后面有一个分号。 应为for(;num <= num2; num++)