思路:
在一个函数中完成判断是否是素数,【注释:assert 宏来限制非法的函数调用:当x>=0不成立时,程序将异常停止,并提示信息】
#include<stdio.h>
#include<math.h>
#include<assert.h>
int is_prime(int n)
{
assert(n>=0);
if(n<=1)
return 0;
int i;
for(i=2;i<= floor(sqrt(n)+0.5);i++)
{
if(n%i==0)
return 0;
}
return 1;
}
int main()
{
int n,i;
scanf(“%d”,&n);
for(i=n-2;i>2;i–)
if(is_prime(i)&&is_prime(i+2))
{
printf(“%d %d\n”,i,i+2);
break;
}
return 0;
}