解题思路:
题目的意思是找到在n以内的素数,并且对相邻两素数进行差值比较,若差值为2,则是素数对
#include <stdio.h>
#include <math.h>
int pd(int n)//判断素数
{
if(n<=1)
return 0;
if(n==2||n==3)
return 1;
for(int i=2;i<=sqrt(n);i++)
{
if(n%i==0)
return 0;
}
return 1;
}
int main()
{
int n,count=0,a[100001],k=0;
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
if(pd(i))
a[k++]=i;//找到在n以内的素数
}
for(int i=0;i<k-1;i++)
{
if(a[i]+2==a[i+1])
count++;
}
printf("%d",count);
return 0;
}