C语言 编程 输出100~300之间所有素数
#include<stdio.h>#include<math.h>main(){intm,i,j,k;j=0;for(m=101;m<300;++m){k=sqrt(m)...
#include<stdio.h> #include<math.h> main() { int m,i,j,k; j=0; for (m=101;m<300;++m) { k=sqrt(m); for(i=2;i<k;++i) if (m%i==0) break; if (i>k) j=j+m; } printf("%d",j); } } 求大神指教啊 我输出的结果为 0 啊..
展开
1个回答
展开全部
不用弄得这么复杂的,定义leam来判断就行了。一开始定义leam=1,如果一个整数能被除了1和自身的数整除的话就把leam定义为0;当leam为1的时候就输出这个整数。你上面有好多地方错误。下面是正确的
#include
"stdio.h"
void
main()
{
int
i,k,leam=1;
for(i=100;i<=300;i++)
{
for(k=2;k<i;k++)
{
if(i%k==0)
leam=0;
}
if(leam==1)
printf("%d\n",i);
leam=1;
}
}
#include
"stdio.h"
void
main()
{
int
i,k,leam=1;
for(i=100;i<=300;i++)
{
for(k=2;k<i;k++)
{
if(i%k==0)
leam=0;
}
if(leam==1)
printf("%d\n",i);
leam=1;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询