验证:2000以内的正偶数都能够分解为两个素数之和。
1 #include<stdio.h>
2 #include<math.h>
3
4 int fflag(int i);
5
6 int main()
7 {
8 int i,n;
9 for(i = 4;i <= 2000;i += 2)
10 {
11 for(n = 2;n < i;n++)
12 {
13 if (fflag(n))
14 {
15 if(fflag(i-n))
16 {
17 printf("%d = %d+%d\n",i,n,i-n);
18 break;
19 }
20 }
21 if(n == i)
22 {
23 printf("error %d\n",i);
24 }
25 }
26 }
27 }
28 fflag(int i)
29 {
30 int j;
31 if(i <= 1)
32 {
33 return (0);
34 }
35 if(i == 2)
36 {
37 return (1);
38 }
39 if(!(i % 2))
40 {
41 return (0);
42 }
43 for(i = 3;j <= (int)(sqrt((double)i) + 1);j += 2)
44 {
45 if(!(i % j))
46 {
47 return (0);
48 }
49 }
50 return (1);
51 return;
52 }
~