我尝试使用C ++ Do-While循环列出素数,但遇到麻烦,但在我的代码中未发现问题。有人可以帮我吗?
到目前为止,我已经尝试过:
#include <iostream>
using namespace std;
int main()
{
int num2check = 3, innerCheck;
bool isPrime;
do
{
isPrime = true;
innerCheck = 2;
while ((innerCheck < num2check) && (isPrime == true));
{
if (num2check % innerCheck == 0)
{
isPrime = false;
break;
}
else
{
innerCheck++;
}
}
if (isPrime == true)
{
cout << num2check << " is prime.";
num2check++;
}
else
{
num2check++;
}
}while(num2check < 50);
return 0;
}
您需要删除此行中的分号
while ((innerCheck < num2check) && (isPrime == true));
在编程标准中,;
表示语句的结尾,或者在这种情况下,它表示空语句,因此此处while
循环不执行任何操作,并继续在无限循环中运行,因为条件始终成立
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句