C语言,输出100-500之间的素数,我练习的时候忘记 if(flag==1)后面的for循环里面写什么了

2024-11-28 04:23:31
推荐回答(2个)
回答1:

#include
#include
int main()
{
int i,j,n=0,flag;
flag=1;
for(i=100;i<=500;i++)
    { 
flag=1; //每次检查前赋值1
for(j=2;j<=sqrt(i);j++)
if(i%j==0)
{
flag=0;
break; //顺序反了,先要赋值,再跳出
}
if(flag==1) 
{
printf("%d ",i);
n++;
if(n%5==0)
printf("\n");
}
    }
return 0;
}

回答2:

#include
#include
#include
int main()
{
    int i,j,n=0,flag, temp;
    //flag=1;
    for(i=100;i<=500;i++)
    { 
        flag = 1;
        temp = sqrt(i);
        for(j=2;j<=temp;j++)
        {
            if(i%j==0)
            {
              flag=0;
              break;
              
            }
        }
        if(flag==1)
        {

            printf("%d ",i);
            n++;

            if(n%5==0)
            printf("\n"); 
        }
    }
    return 0;
   
}