回 帖 发 新 帖 刷新版面

主题:哥德巴赫猜想

#include"stdio.h"
int sushu(int m);
void main()
{
    int i,a,b;
    for(i=4;i<=100;i=i+2)
    {
     for(a=2;a<=100;a++)
     for(b=2;b<=100;b++)
     if((i=a+b)&&(sushu(a))&&(sushu(b)))
     printf("%3d=%3d+%3d\n",i,a,b);
    }
}
int sushu(int m)
{
    int n;
    if(m==2)
    return(1);
    for(n=2;n<m;n++)
    {
        if(m%n==0)
        return(0);
        else
            return(1);
    }
}
结果不对

 92= 89+  3
 94= 89+  5
 96= 89+  7
 98= 89+  9
100= 89+ 11
102= 89+ 13
104= 89+ 15
106= 89+ 17
108= 89+ 19
110= 89+ 21
112= 89+ 23
114= 89+ 25
116= 89+ 27
118= 89+ 29
120= 89+ 31
122= 89+ 33
124= 89+ 35
126= 89+ 37
128= 89+ 39
130= 89+ 41
132= 89+ 43
134= 89+ 45
136= 89+ 47
138= 89+ 49
140= 89+ 51
142= 89+ 53
144= 89+ 55
146= 89+ 57
148= 89+ 59
150= 89+ 61
152= 89+ 63
154= 89+ 65
156= 89+ 67
158= 89+ 69
160= 89+ 71
162= 89+ 73
164= 89+ 75
166= 89+ 77
168= 89+ 79
170= 89+ 81
172= 89+ 83
174= 89+ 85
176= 89+ 87
178= 89+ 89
180= 89+ 91
182= 89+ 93
184= 89+ 95
186= 89+ 97
188= 89+ 99
 93= 91+  2
 94= 91+  3
 96= 91+  5
 98= 91+  7
100= 91+  9
102= 91+ 11
104= 91+ 13
106= 91+ 15
108= 91+ 17
110= 91+ 19
112= 91+ 21
114= 91+ 23
116= 91+ 25
118= 91+ 27
120= 91+ 29
122= 91+ 31
124= 91+ 33
126= 91+ 35
128= 91+ 37
130= 91+ 39
132= 91+ 41
134= 91+ 43
136= 91+ 45
138= 91+ 47
140= 91+ 49
142= 91+ 51
144= 91+ 53
146= 91+ 55
148= 91+ 57
150= 91+ 59
152= 91+ 61
154= 91+ 63
156= 91+ 65
158= 91+ 67
160= 91+ 69
162= 91+ 71
164= 91+ 73
166= 91+ 75
168= 91+ 77
170= 91+ 79
172= 91+ 81
174= 91+ 83
176= 91+ 85
178= 91+ 87
180= 91+ 89
182= 91+ 91
184= 91+ 93
186= 91+ 95
188= 91+ 97
190= 91+ 99
 95= 93+  2
 96= 93+  3
 98= 93+  5
100= 93+  7
102= 93+  9
104= 93+ 11
106= 93+ 13
108= 93+ 15
110= 93+ 17
112= 93+ 19
114= 93+ 21
116= 93+ 23
118= 93+ 25
120= 93+ 27
122= 93+ 29
124= 93+ 31
126= 93+ 33
128= 93+ 35
130= 93+ 37
132= 93+ 39
134= 93+ 41
136= 93+ 43
138= 93+ 45
140= 93+ 47
142= 93+ 49
144= 93+ 51
146= 93+ 53
148= 93+ 55
150= 93+ 57
152= 93+ 59
154= 93+ 61
156= 93+ 63
158= 93+ 65
160= 93+ 67
162= 93+ 69
164= 93+ 71
166= 93+ 73
168= 93+ 75
170= 93+ 77
172= 93+ 79
174= 93+ 81
176= 93+ 83
178= 93+ 85
180= 93+ 87
182= 93+ 89
184= 93+ 91
186= 93+ 93
188= 93+ 95
190= 93+ 97
192= 93+ 99
 97= 95+  2
 98= 95+  3
100= 95+  5
102= 95+  7
104= 95+  9
106= 95+ 11
108= 95+ 13
110= 95+ 15
112= 95+ 17
114= 95+ 19
116= 95+ 21
118= 95+ 23
120= 95+ 25
122= 95+ 27
124= 95+ 29
126= 95+ 31
128= 95+ 33
130= 95+ 35
132= 95+ 37
134= 95+ 39
136= 95+ 41
138= 95+ 43
140= 95+ 45
142= 95+ 47
144= 95+ 49
146= 95+ 51
148= 95+ 53
150= 95+ 55
152= 95+ 57
154= 95+ 59
156= 95+ 61
158= 95+ 63
160= 95+ 65
162= 95+ 67
164= 95+ 69
166= 95+ 71
168= 95+ 73
170= 95+ 75
172= 95+ 77
174= 95+ 79
176= 95+ 81
178= 95+ 83
180= 95+ 85
182= 95+ 87
184= 95+ 89
186= 95+ 91
188= 95+ 93
190= 95+ 95
192= 95+ 97
194= 95+ 99
 99= 97+  2
100= 97+  3
102= 97+  5
104= 97+  7
106= 97+  9
108= 97+ 11
110= 97+ 13
112= 97+ 15
114= 97+ 17
116= 97+ 19
118= 97+ 21
120= 97+ 23
122= 97+ 25
124= 97+ 27
126= 97+ 29
128= 97+ 31
130= 97+ 33
132= 97+ 35
134= 97+ 37
136= 97+ 39
138= 97+ 41
140= 97+ 43
142= 97+ 45
144= 97+ 47
146= 97+ 49
148= 97+ 51
150= 97+ 53
152= 97+ 55
154= 97+ 57
156= 97+ 59
158= 97+ 61
160= 97+ 63
162= 97+ 65
164= 97+ 67
166= 97+ 69
168= 97+ 71
170= 97+ 73
172= 97+ 75
174= 97+ 77
176= 97+ 79
178= 97+ 81
180= 97+ 83
182= 97+ 85
184= 97+ 87
186= 97+ 89
188= 97+ 91
190= 97+ 93
192= 97+ 95
194= 97+ 97
196= 97+ 99
101= 99+  2
102= 99+  3
104= 99+  5
106= 99+  7
108= 99+  9
110= 99+ 11
112= 99+ 13
114= 99+ 15
116= 99+ 17
118= 99+ 19
120= 99+ 21
122= 99+ 23
124= 99+ 25
126= 99+ 27
128= 99+ 29
130= 99+ 31
132= 99+ 33
134= 99+ 35
136= 99+ 37
138= 99+ 39
140= 99+ 41
142= 99+ 43
144= 99+ 45
146= 99+ 47
148= 99+ 49
150= 99+ 51
152= 99+ 53
154= 99+ 55
156= 99+ 57
158= 99+ 59
160= 99+ 61
162= 99+ 63
164= 99+ 65
166= 99+ 67
168= 99+ 69
170= 99+ 71
172= 99+ 73
174= 99+ 75
176= 99+ 77
178= 99+ 79
180= 99+ 81
182= 99+ 83
184= 99+ 85
186= 99+ 87
188= 99+ 89
190= 99+ 91
192= 99+ 93
194= 99+ 95
196= 99+ 97
198= 99+ 99
Press any key to continue
为啥

回复列表 (共4个回复)

沙发


帮忙看一下,谢谢了

板凳

把问题描述出来吧。。

3 楼

#include <math.h>
#include <stdio.h>

int sushu(int m);
void main()
{
    int i,a,b;
    for(i=4;i<=100;i=i+2)
    {
     for(a=2;a<=100;a++)
     for(b=2;b<=100;b++)
     if((i==a+b)&&(sushu(a))&&(sushu(b)))
     printf("%3d=%3d+%3d\n",i,a,b);
    }
}

int sushu(int m){
    int n;
    if(m==2)
        return 1;
    for (n=2;n<m;n++){
        if(m%n==0)
            return 0;
        }return 1;
}
质数的判断有问题,还有就是main()中的if有问题才会出现100以上的数的。
你调整一下程序就可以都显示出来了。

4 楼


谢谢了,好了

我来回复

您尚未登录,请登录后再回复。点此登录或注册