关于C语言程序设计,改下错误。。。

来源:百度知道 编辑:UC知道 时间:2024/06/14 16:05:22
输出10~100之间的全部质数

#include<stdio.h>
#include<math.h>
void main()
{
int i=11,j,counter=0,k,flag;
for(;i<=100;i+=2)
{
k=sqrt(i);
for(j=2;j<=k;j++)
if(i%j==0)
{flag=0;
break;}
if(counter%10==0)
printf("\n");
if(flag)
{printf("%6d",i);
counter++;}
}
}

怎么只输出两个数,错哪儿。。。

#include<stdio.h>
#include<math.h>
void main()
{
int i,j,k,flag = 1;
int counter=0;
for(i=11;i<=100;i++) //
{
k=(int)sqrt(i);
for(j=2;j<=k;j++)
if(i%j==0)
{
flag=0;
break;
}

else
flag = 1; //修改,否则一旦flag = 0就再也没有机会= 1了
if(counter%10==0)
printf("\n");

if(flag)
{
printf("%6d",i);
counter++;
}
}
}