(哥德巴赫猜想)求各位解释一下程序。
如题,自己根据网上的一些代码自己改的,但是还是有部分不太明白,烦劳论坛里的各位大虾讲解一下。程序代码:
#include"stdio.h" #include"math.h" void P(int x){ int i,j,f,count = 0; for(i = 2;i < x/2;i++){//为什么遍历到x/2就可以了? f = 1; for(j = 2;j <= sqrt(i);j++) if(i % j == 0) f = 0; if(f){ for(j = 2;j < sqrt(x - i);j++) if((x - i) % j == 0) f = 0; if(f){ count++;//判断有多少种可能 printf("%d",count);//如果想用返回值,并且返回那两个素数该怎么弄? } } } } int main () { int x; do{ scanf("%d",&x); }while(x % 2||x < 3);//这个判断条件不是太明白,还有C中while(t--);while(t)等判断条件是什么意思? P(x); return 0; }