用c语言求100--200之间的素数

2024-12-14 08:43:49
推荐回答(4个)
回答1:

#include
#include
void main()
{
int m,i,k;
for(m=100;m<=200;m++)
{
k=(int)sqrt(m);

for(i=2;i<=k;i++)
if(m%i==0)
break;
if(k printf("%d,",m);
}
getch();
}
程序基本上没什么大错,只要在输出上改一下就行,以上正确的代码
你的错误:例如当m=105(显然不是素数)m%2!=0 然后执行else ,就是输出105;
所以你要个判段i到k是否 都被m除到,所以i》k时就输出这个数,方法很多,你也可以用的别的方法做

回答2:

// test_sushu.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include

int main()
{
int m,i,k;

for(m=100;m<=200;m++)
{
k=(int)sqrt((float)m);
for(i=2;i<=k;i++)
{
if(m%i==0)
{

break;
}

}
if (i>k)
{
printf("m=%d\n",m);
}

}
getchar();
return 0;
}

你的内存循环有问题自己找不要让人教了,

回答3:

简单一点儿吧
#include

main()
{
int m,i;
for(m=100;m<=200;m++)
{
for(i=2;i {
if(m%i!=0)
{
printf("%d\n",m);
}
break;
}

}
return 0;

}
以后有不懂的,发邮件到yuanxuebo1840121@163.com,我帮你啦

回答4:

#include
void main()
{ int i,j,count;
for(i=100;i<=200;i++)
{ count=0;
for(j=2;j { if(i%j==0)
count++;
}
if(count==0)
printf("%d 是素数!\n",i);
}
}