【sos】编程中遇到一个问题,高手进~!
这是一个将输入的一个偶数写成两个素数之和的程序,,有疑问,,请往下看#include <stdio.h>
#include <math.h>
void fun(int a)
{
int b,c,d;
for(b=3;b<=a/2;b=b+2)
{
for(c=2;c<=sqrt(b);c++)
if(b%c==0)
break;
if(c>sqrt(d))
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);
}
}
main()
{
int a;
printf("\ninput a:\n");
scanf("%d",&a);
fun(a);
}
疑问:若a=20,那么输出a=3+17,,但a也等于7+13,为什么不输出这个结果, 或是说,为什么编译出来只有一个结果