歌德巴赫猜想素数的有关问题

4、(可选,但还是建议做一下)素数的有关问题。
(1)首先读懂并修改代码中存在的错误;
(2)去掉isPrime中的flag变量,用return语句替代。
(3)歌德巴赫猜想是指任意的一个偶数都可以拆分为两个素数的和,修改main函数,使之能接受用户输入的偶数,然后输出两个素数,这两个素数的和等于用户输入的数值。
#include

int isPrime(int x){
/*
函数用来判断x是否为素数,例如isPrime(5)返回1, 表示5为素数.
isPrime(9)返回0, 表示9为合数(非素数)
*/
int i;
int flag=1;
for (i=2; i<=x-1; i++){
if (x%i==0)
flag=0; break;
}
return flag;
}

void main(){
int k;
for (k=2; k<=20000; k++)
if (isPrime(k)==1)
printf("%d是素数\n",k);
}

1、错误和去掉flag

 int isPrime(int x){
    /*
    函数用来判断x是否为素数,例如isPrime(5)返回1, 表示5为素数.
    isPrime(9)返回0, 表示9为合数(非素数)
    */
    int i;
    for (i=2; i<=x-1; i++){
        if (x%i==0){//break错了
            return 0;
        }
    }
    return 1;
}

2、偶数拆分素数
http://zhidao.baidu.com/link?url=J-Q8kUAwAnMsUy2-Vi8W-DThmVERC0bYMbxaxqatPMW7r2tSA3ksBzMqwm1l_MhV4pn5cBK9j-KmknHfONQaIK

我不知道回了lz多少个问题,从来没看到lz采纳过。