又有C问题了

来源:百度知道 编辑:UC知道 时间:2024/07/02 22:47:08
求M后的N个相邻素数的程序
改来改去实在不知道问题在哪里··谢了·

#include <stdio.h>
void fun(int m, int k, int xx[])
{
int n=0,h=0,y,i,l=0;
for(y=m;n<k;y++)
{ l=0;
for(i=2;i<y;i++)
if(y%i==0)
l=1;

if(l==0)
{ xx[h]=y;
h++;
n++;
}
}
}
main()
{
int m,n,zz[1000];
printf("\nPlease enter two integers:");
scanf("%d,%d",&m,&n);
fun( m,n,zz);
for(m=0; m<n; m++)
printf("%d ", zz[m]);
printf("\n");
}
我加过BREAK试可是最后还是不成功
那我以后再试试其他方法
不晓得这个问题在哪里啊
卡在这里好久
有没有测试成功指点一下

没问题啊,除了没考虑1不是素数这个情况外.

for(i=2;i<y;i++)
{if(y%i==0)
{I=1;break;}
}如果没有break永远不会在y%i==0时跳出此次循环,还有一点建议,判断素数的方法很多,你的程序里面做了好多无用功!