“循环完成后,检查该变量是否是1”,怎么检查?

img
img

img

变量指的是isPrime,for循环开始前值为true也就是1,在循环过程中,如果进入了if,isPrime会赋值为false也就是0,在for循环结束后 if(isPrime)判断isPrime是否为1

if是判断语句而不是循环,你这个是要判断是否为素数吗?
代码如下


#include<bits/stdc++.h>
using namespace std;
bool sushu(int x)
{
    for(int i=2;i<=sqrt(x);i++)
    {
        if(x%i==0) return 0;
    }
    if(x!=1)
        return 1;
    else return 0;
}
int main()
{
    int x,y;
    cin>>x>>y;
    int ans=0;
    int temp;
    for(int i=x;i<=y;i++)
    {
        if(sushu(i)) ans++;
    }
    cout<<ans;
}