C语言验证哥德巴赫 2000以内,帮我看一下哪错了
答案:1 悬赏:40 手机版
解决时间 2021-02-26 03:10
- 提问者网友:嘚啵嘚啵
- 2021-02-25 10:46
C语言验证哥德巴赫 2000以内,帮我看一下哪错了
最佳答案
- 五星知识达人网友:英雄的欲望
- 2021-02-25 11:14
给你改了一下,错了很多的感觉,注释给出位置
#include
#include
int JudgePrime(int h)
{
int m, k;
int judge = 1;
k = (int)sqrt((double)h);////////
for (m = 2; judge && m <= k; m++)
{
if (h%m == 0)
judge = 0;
}
return judge;
}
int main()
{
int x, n;
//scanf("%d", &x);/////////
for (x = 4; x <= 2000; x = x + 2)
{
for (n = 2; n {
if (JudgePrime(n))/////////
{
if (JudgePrime(x - n)){/////////
printf("%d+%d=%2d
", n, x - n, x);///////////
break;////////////
}//////////
}
}
}
return 0;/////////////
}追问谢谢,我知道问题出在哪了,x和n写反了,还多了scanf,返回值的位置写错了,谢谢你!
#include
#include
int JudgePrime(int h)
{
int m, k;
int judge = 1;
k = (int)sqrt((double)h);////////
for (m = 2; judge && m <= k; m++)
{
if (h%m == 0)
judge = 0;
}
return judge;
}
int main()
{
int x, n;
//scanf("%d", &x);/////////
for (x = 4; x <= 2000; x = x + 2)
{
for (n = 2; n
if (JudgePrime(n))/////////
{
if (JudgePrime(x - n)){/////////
printf("%d+%d=%2d
", n, x - n, x);///////////
break;////////////
}//////////
}
}
}
return 0;/////////////
}追问谢谢,我知道问题出在哪了,x和n写反了,还多了scanf,返回值的位置写错了,谢谢你!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯