标题:一个程序题,不知错在哪里
只看楼主
叶落根
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2016-12-8
结帖率:0
已结贴  问题点数:20 回复次数:1 
一个程序题,不知错在哪里
谁能帮帮我看看这程序错在哪里,为什么总输出the number is false,please aganin a dualnum。
程序是
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 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 f)
 {int i,j,g;
  for (i=1;i<f;i++)
  {g=f%i;
   if(g=0) j=1;
   else j=0;
  }
  return(j);
 }
题目是
1. 上次上机课我们已实现prime函数用于判读一个数是否为素数,本次课编写goldbach函数,并调用prime函数验证哥德巴赫猜想——任何不小于4的偶数,都可表示为两个素数之和(如:4=2+2)。

要求:

1)在main函数中利用循环结构连续提示用户输入一个不小于4的偶数num,并将其作为实参传递给goldbach;若num小于4或为奇数,则输出错误信息并提示用户重新输入;若用户想退出输入,则输入0.
2)在goldbach函数中调用prime函数判断用户输入的数是否可表示为两个素数之和,若可以,则哥德巴赫猜想得证,否则,输出错误信息。
搜索更多相关主题的帖子: please number false 
2016-12-09 23:37
hm605538951
Rank: 2
等 级:论坛游民
帖 子:25
专家分:27
注 册:2016-7-16
得分:20 
if(x=0) break;
if ( 0 == x) break;

if (c=0) printf("the conclusion is ture\n");
if (c==0) printf("the conclusion is ture\n");

[此贴子已经被作者于2016-12-10 00:16编辑过]

2016-12-10 00:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-472215-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016557 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved