关于素数的问题
磨破头都没想明白。。。。。 #include <stdio.h>int main()
{
int m,n;
int i,k;
printf("请输入俩个整数m,n(符合2<=m<=n<=1000): \n");
scanf("%d%d",&m,&n);
for( i=m;i<=n;i++)
{
for(k=2;k<i;k++)
{
if(i%k==0)
break;
}
if(k==i)
printf("%d ",i);
}
printf("\n");
return 0;
}
当然也可以加if语句限制m,n的输入范围,上面只是简单提示
// 给定一个区间,求该区间内所有的素数,2<=m<n<=1000
#include <stdio.h>
#include <math.h>
void main()
{
int m; // 输入区间的最小值
int n; // 输入区间的最大值
int i,j,k = 0;
scanf("%d%d",&m,&n);
for (i = m;i <= n;i++)
{
for (j = 2;j < n;j++)
{
if (i % j == 0)
break;
}
if (i == j)
{
printf("%d ", i);
k++;
}
}
printf("\n");
printf("区间内共有%d个素数\n", k);
printf("\n");
}
程序中的统计,你不想要可以去掉,即删除变量 k 及其语句即可,不会影响程序正常运行 素数筛法 谢谢大家
页:
[1]