本帖最后由 吐兔弘 于 2016-10-11 21:02 编辑
嗯,这段代码是转的
[mw_shl_code=c,true]#include <stdio.h>
#include <conio.h>
#include <math.h>
int prime(int n)
{
int r,i;
r=sqrt(n);
for(i=2;i<=r;i++)
{
if(n%i==0) //此处n%i==0,说明不是素数,立刻跳出循环
return 0;
}
return 1;
}
int main ()
{
int m,n,i,t=0;
printf("请输入范围m,n\n");
scanf("%d%d",&m,&n);
for(i=m;i<=n-2;i++) //此处限制i<=n-2,不然prime(i+2)超过范围;另外i每次自加1, //不能加2
{
if (prime(i)&&prime(i+2))
{
t+=1;
printf("(%d,%d)\n",i,i+2);
}
}
printf("%d\n",t);
if(t==0)
printf("无孪生素数!");
getch();
}[/mw_shl_code]
另一个(这个是自己写的)
[mw_shl_code=c,true]#include <stdio.h>
#include <stdlib.h>
int isprime(int m)
{
int i;
for(i=2; i<=m/2; i++)
{
if(m%i==0)
{
return 0;
}
}
return 1;
}
int main()
{
int i, ans=1;
for(i=100; i<=200; i++)
{
if(isprime(i) && isprime(i+2))
ans++;
}
printf("%d",ans);
getch();getch();
return 0;
}[/mw_shl_code]
|