-
题目
-
思路
- 先定义判断一个数是否素数的函数
is_prime
,根据题意,在3~n的范围内,判断“相差为2的两个数是否都是素数”,符合条件则计数器加1
- 先定义判断一个数是否素数的函数
-
代码
#include <stdio.h> //判断某个数是不是素数 bool is_prime(int n){ if(n<=1) return false; for(int i=2;i*i<=n;i++){ if(n%i==0){ return false; } } return true; } int main(){ int n,cnt=0; scanf("%d",&n); //遍历,查找符合条件的数对 for(int i=3;i+2<=n;i+=2){ if(is_prime(i)&&is_prime(i+2)){ //相邻且差为2的素数 cnt++; } } printf("%d",cnt); }