1000以内的哥德巴赫猜想C语言程序如何编写?

来源:百度知道 编辑:UC知道 时间:2024/06/14 22:31:06
最好把详细程序写出来,谢谢!

#include<stdio.h>
#include<math.h>
void main()
{
int i,n,j,k,m,l=0;
for(i=4;i<=1000;i+=2)
{
for(n=2;n<i;n++)
{
for(j=2,k=1;j<=(int)sqrt(n);j++)/*判断n是否素数*/
{
if(n%j==0) k=0;

}
if(k) /*n是素数继续判断i-n是否素数*/
for(j=2,m=1;j<=(int)sqrt(i-n);j++)/*判断i-n是否素数*/
{
if((i-n)%j==0) m=0;

}
if(m)
{
printf("%d=%d+%d ",i,n,i-n);
l++;
if (l%5==0)
printf ("\n");
break;
}
}
if(n==i) printf("error %d\n",i);/*n等于i,i不遵循哥德巴赫猜想*/
}

}

#include<stdio.h>

#include<math.h>

int isprime(int n)

{int i;

for(i=2;i<=sqrt(n);i++)

  if(n%i==0)return 0;

return 1;

}

int main()

{

int i,j,s=0;

for(i=6;i<=1000;i+=2)

for(j=3;j<=i/2;j+=2)

if(isprime(j)&&isprime(i-j))