一个判断程序题,求大神帮助解决一下
这个程序其它都行,只是输入大于4的偶数是它只输出the conclusion is false,求改错程序:int main(int argc, char *argv[])
{int goldbach(int x);
int x,c,l,m;
printf("if you want to end,please enter 0\n");
for (m=1;m<100;m++)
{printf("please enter a dualnum which overtakes 3:");
scanf("%d",&x);
if (x==0) {break;}
else if(x<4||x%2!=0)
{printf("the number is false,please aganin a dualnum\n");}
else
{int goldbach(int x);
c=l;
if (c==0) {
printf("the conclusion is ture\n");}
else printf("the conclusion is false\n");
}
}
return 0;
}
int goldbach(int x)
{int goldbach;
int b,d,p,h,j,l;
for(b=1;b<x;b++)
{d=x-b;
int perime(int d),p=j;
int perime(int b),h=j;
l=(p+h)/2;
if (l==0) {
break;}
}
return(l);
}
int perime(int a)
{int perime;
int n;
int j;
j=1;
for (n=2;n<=a-1;n++)
if (a%n==0) {
j=0;break;}
if (j!=0)
j=1;
return(j);}
题目:上次上机课我们已实现prime函数用于判读一个数是否为素数,本次课编写goldbach函数,并调用prime函数验证哥德巴赫猜想——任何不小于4的偶数,都可表示为两个素数之和(如:4=2+2)。
要求:
1)在main函数中利用循环结构连续提示用户输入一个不小于4的偶数num,并将其作为实参传递给goldbach;若num小于4或为奇数,则输出错误信息并提示用户重新输入;若用户想退出输入,则输入0.
2)在goldbach函数中调用prime函数判断用户输入的数是否可表示为两个素数之和,若可以,则哥德巴赫猜想得证,否则,输出错误信息。