c语言的问题 tk273改错

来源:百度知道 编辑:UC知道 时间:2024/06/03 02:19:24
gc273.c功能是:一个偶数总能表示为两个素数之和。
请改正程序的两个错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include "stdio.h"
#include "math.h"
main()
{ int a,b,c,d;
scanf("%d",a);
for(b=3;b<=a/2;b+=2)
{ for(c=2;c<=sqrt(b);c++)
if(b%c==0) break;
if(c>sqrt(b))
d=a+b;
else
break;
for(c=2;c<=sqrt(d);c++)
if(d%c==0) break;
if(c>sqrt(d))
printf("%d=%d+%d\n",a,b,d);
}
}

#include "stdio.h"
#include "math.h"
main()
{ int a,b,c,d;
//scanf("%d",a);//格式不正确
scanf("%d",&a);
for(b=3;b<=a/2;b+=2)
{ for(c=2;c<=sqrt(b);c++)
if(b%c==0) break;
if(c>sqrt(b))
//d=a+b;//逻辑错误
d=a-b;
else
break;
for(c=2;c<=sqrt(d);c++)
if(d%c==0) break;
if(c>sqrt(d))
printf("%d=%d+%d\n",a,b,d);
}
}