计算100到200的素数,为什么不能用continue语句输出正确结果,哪里错了

continue放在最内层循环中,只能够跳过该循环体下面尚未执行的语句,,然后进行下一次是否执行循环的判定,而你的continue语句下面没有语句,所以就相等于是没有用。修改如下:
#include<stdio.h>
#include<math.h>
int main()
{
int i,j,k,flag;
for(i=100;i<=200;i++)
{
flag=1;
k=sqrt(i);
for(j=2;j<=k;j++)
{
if(i%j==0)
flag=0;
}
if(flag==0)
continue;
printf("%d ",i);
}
}