孪生素数问题
简单的判断一下,小于一个整数的最大的两个连续的素数,如果满足条件输出即可。
解题思路:
用函数单独判断素数后,简单的调用问题,是的话输出就行。
程序代码:
#include<stdio.h>
#include<math.h>
int is_prime(int n){
int i;
if(n==1)
return 0;
int m=floor(sqrt(n)+0.5);
for(i=2; i<=m; i++)
if(n%i==0) return 0;
return 1;
}
int main()
{
int i,m;
scanf("%d", &m);
for(i=m-2; i>=3; i--){
if(is_prime(i)&&is_prime(i+2)){
printf("%d %d\n", i, i+2);
break;
}
}
return 0;
}