展开全部
楼主的两个e5a48de588b63231313335323631343130323136353331333335313762for循环用的不对,另外整个流程也是有问题的。改正的代码如下:#include
#include
intmain()
{
inta,b;/*输入的两个数据范围*/
inti,j,k;
intnum=0,s;/*素数个数,素数标志*/
scanf("%d%d",&a,&b);
for(i=a;i+2<=b;i++)
{
s=1;/*先假设i是素数*/
k=sqrt(i);
for(j=2;j<=k;j++)
{
if(i%j==0)
{
s=0;/*i不是素数*/
break;
}
}
if(s)
{
k=sqrt(i+2);
for(j=2;j<=k;j++)
{
if((i+2)%j==0)
{
s=0;/*i+2不是素数*/
break;
}
}
if(s)
{
++num;/*i+2是素数*/
printf("第%d个孪生素数[%d,%d]\n",num,i,i+2);
}
}
}
return0;
}
二、用GCC编译测试结果:
如果觉得《c语言孪生素数问题_C语言编程。。孪生素数》对你有帮助,请点赞、收藏,并留下你的观点哦!