何解?????????
mani(){int n,m,i,j,l=0;
scanf("%d",&m);
for(n=2;n<=m;n++)
{i=sqrt(n);
for(j=2;j<=i;j++)
if(!(n%j))break;
if(j>=i+l)
if(l<5)
{printf("%d",n);
l++;
}
else
{printf("%d\n",n);
l=0;
}
}
}
上面的 if(j>=i+l) 该怎么理解??????? break应该跳到哪条语句??????
谢谢!!!!!!!!!!
----------------解决方案--------------------------------------------------------
if(j>=i+l) 先计算i+1的值,然后判断j是否大于或等于i+1
break与离他最近的for语句相连,跳到下一条,即执行if(j>=i+l)
----------------解决方案--------------------------------------------------------
我是想问它同上下的关系~~~~~~~~~
----------------解决方案--------------------------------------------------------
if(j>=i+l)
包含在for(n=2;n<=m;n++)里啊
和for(j=2;j<=i;j++)
if(!(n%j))break没关系的
----------------解决方案--------------------------------------------------------
感觉这个程序少了点什么,不会就这么多吧,也不知是干嘛用的,小弟蔡鸟也不懂!!
----------------解决方案--------------------------------------------------------
除了别人有说过的,还少了个<math.h> 的头文件
----------------解决方案--------------------------------------------------------