| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 331 人关注过本帖
标题:来看看哪错了?
只看楼主 加入收藏
God_God
Rank: 2
等 级:论坛游民
帖 子:7
专家分:10
注 册:2009-7-18
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
来看看哪错了?
某侦察队接到一项紧急任务,要求在A,B,C,D,E,F中尽可能多条若干人,但限制条件是
①A和B两人中至少取一人
②A和D不能同时去
③A、E、F三人要去两人
④B和C都去或都不去
⑤C和D两人去一人
⑥若D不去,E也不去
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
main()
{
     void f(int n);
      int a,b,c,d,e,f;
      for(a=1;a=0;a--)    /* 1代表去,0代表不去*/
      for(b=1;b>=0;b--)
      for(c=1;c>=0;c--)
      for(d=1;d>=0;d--)
      for(e=1;e>=0;e--)
      for(f=1;f>=0;f--)
      if(a+b>=1&&a+d!=2&&a+e+f==2&&(b+c==0||b+c==2)&&c+d==1&&(d+e==0||d==1))
      {
        printf("A will %s assigned.\n",f(a));
        printf("B will %s assigned.\n",f(b));
        printf("C will %s assigned.\n",f(c));
        printf("D will %s assigned.\n",f(d));
        printf("E will %s assigned.\n",f(e));
        printf("F will %s assigned.\n",f(f));
      }
      system("pause");
      return 0;
}
void f(int n)
{
    if(n==1)printf("be");
    if(n==0)printf("not be");
}
搜索更多相关主题的帖子: 谢谢支持 
2009-07-28 16:33
God_God
Rank: 2
等 级:论坛游民
帖 子:7
专家分:10
注 册:2009-7-18
收藏
得分:0 
写错了 a的范围应是
for(a=1;a>=0;a--)    /* 1代表去,0代表不去*/
2009-07-28 16:48
rgbitxpl
Rank: 3Rank: 3
来 自:赣州
等 级:论坛游侠
帖 子:148
专家分:127
注 册:2009-5-10
收藏
得分:0 
自己给自己回答?

只要精通C,哪里都敢闯
为了成大虾,只有多编程
2009-07-28 21:45
God_God
Rank: 2
等 级:论坛游民
帖 子:7
专家分:10
注 册:2009-7-18
收藏
得分:0 
不是 是发时有个错误  仍不能运行  多谢指点
2009-07-29 15:59
godbless
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:216
专家分:950
注 册:2009-7-24
收藏
得分:20 
我小改了一下..

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
      char *ff(int n);
      int a,b,c,d,e,f;
      for(a=1;a>=0;a--)    /* 1代表去,0代表不去*/
      for(b=1;b>=0;b--)
      for(c=1;c>=0;c--)
      for(d=1;d>=0;d--)
      for(e=1;e>=0;e--)
      for(f=1;f>=0;f--)
      if(a+b>=1&&a+d!=2&&a+e+f==2&&(b+c==0||b+c==2)&&c+d==1&&(d+e==0||d==1))
      {
        printf("A will %s assigned.\n",ff(a));
        printf("B will %s assigned.\n",ff(b));
        printf("C will %s assigned.\n",ff(c));
        printf("D will %s assigned.\n",ff(d));
        printf("E will %s assigned.\n",ff(e));
        printf("F will %s assigned.\n",ff(f));
      }
      system("pause");
      return 0;
}
char *ff(int n)
{
    char *p;
    if(n==1)p="be";
    if(n==0) p="not be";
    return p;
}
2009-07-29 17:09
快速回复:来看看哪错了?
数据加载中...
 
   



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

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