1021第三届程序设计大赛 哥德巴赫猜想

#include 
int is_prime(int n)
{
    int i;
    int prime=1;
    for(i=2;i*i<=n;i++)
    {
        if(n%i==0)
        {
            prime=0;
            break;
        }
    }
    if(n<2)
    {
        prime=0;
    }
    return prime;
}
int main(int argc,const char *argv[])
{
    int i,j,k;
    int cnt=0;
    int n;
    int arr[1229];
    for(i=0;i<10000;i++)
    {
        if(is_prime(i))
        {
            arr[cnt]=i;
            cnt++;
        }
    }
    while(scanf("%d",&n)&&n!=0)
    {
        for(i=1228;i>=0;i--)
        {
            if(arr[i]for(j=0;jif(arr[i]+arr[j]==n)
                    {
                        printf("%d=%d+%d\n",n,arr[j],arr[i]);
                        goto OUT;
                    }
                }
            }
        }
        OUT:;
    }
    return 0;
} 

你可能感兴趣的:(ACM)