#include
#include
#include "math.h"
void CreatePrime(int* prime) //生成一个50以内的素数数组
{
int i,j,k=0;
prime[k++]=2;
for(i=3;i<=50;i++)
{
int flag=0;
for(j=2;j<=sqrt(i);j++)
{
if(i%j==0)
{
flag=1;
break;
}
}
if(flag==0)
{
prime[k++]=i;
}
}
}
int main(int argc, char *argv[])
{
int i,j,k;
int* prime;
prime=(int*)malloc(sizeof(int)*20); //定义一个数组,存储50内的素数
memset(prime,0,sizeof(int)*20);
CreatePrime(prime); //生成素数数组
for(i=6;i<=50;i+=2) //6到50中的偶数,琢个测试
{
for(j=0;j<20;j++)
{
for(k=0;k<20;k++)
{
if(prime[j]+prime[k]==i)
{
printf("\n%2d=%2d+%2d",i,prime[j],prime[k]);
}
}
}
}
return 0;
}
#include
int prime(int n){
int i;
if(n>2 && !(n&1) || n<2)
return 0;
for(i=3;i*i<=n;i+=2)
if(!(n%i))
return 0;
return 1;
}
int main(void){
int i,j;
for(i=6;i<51;i+=2)
for(j=2;j if(prime(j) && prime(i-j)){
printf("%d == %d + %d\n",i,j,i-j);
break;
}
return 0;
}
这个自己编呀,别人写的有什么用?做几个循环嵌套就完了。