| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1005 人关注过本帖
标题:一道有趣的题,急需解答?
只看楼主 加入收藏
chenxihaoyun
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2010-12-7
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:14 
一道有趣的题,急需解答?
有四个人,其中有一个人的了一百分;A说不是我,B说是C,C说是B,D说C胡说;这四个人中只有一个人说谎,用编程做,输出谁的了一百分?
  

搜索更多相关主题的帖子: 编程 
2011-01-02 10:08
zzgzzg00
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:2
帖 子:388
专家分:627
注 册:2010-8-2
收藏
得分:3 
c,d矛盾,所以说假话的人在c,d中,那么b就是真话了 所以是c
编程不会了  等高手吧

粗心是大敌
2011-01-02 10:21
zhaoya881010
Rank: 9Rank: 9Rank: 9
来 自:芒砀古郡
等 级:蜘蛛侠
威 望:1
帖 子:339
专家分:1177
注 册:2010-11-21
收藏
得分:3 

Go Go Go
2011-01-02 10:28
chenxihaoyun
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2010-12-7
收藏
得分:0 
回复 2楼 zzgzzg00
大哥在下佩服
2011-01-02 10:29
BlueGuy
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:29
帖 子:4476
专家分:4055
注 册:2009-4-18
收藏
得分:3 
在下佩服

我就是真命天子,顺我者生,逆我者死!
2011-01-02 10:36
chenxihaoyun
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2010-12-7
收藏
得分:0 
回复 3楼 zhaoya881010
大哥们好好想一想?
2011-01-02 10:41
chenxihaoyun
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2010-12-7
收藏
得分:0 
回复 5楼 BlueGuy
能否给我点思路?急需解答
2011-01-02 10:53
chenxihaoyun
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2010-12-7
收藏
得分:0 
回复 5楼 BlueGuy
能不能简化
#include<stdio.h>
int main()
{
    int a,b,c,d,A,B,C,D;   
    for(a=0;a<=100;a+=100)
        for(b=0;b<=100;b+=100)
            for(c=0;c<=100;c+=100)
                for(d=0;d<=100;d+=100)
                {
                    if(a+b+c+d==100)
                    {
                        A=(a!=100);B=(c==100);C=(b==100);D=(b!=100);
                        if(A+B+C+D==3)
                            printf("%5d%5d%5d%5d\n",a,b,c,d);
                    }
                }
                return 0;
}
2011-01-02 11:14
aaronhexin
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:67
专家分:199
注 册:2010-12-6
收藏
得分:3 
可以用逻辑运算去做
2011-01-02 11:23
落拓
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:58
专家分:173
注 册:2010-9-29
收藏
得分:3 
/*
分别对A B C D四个人进行编号为1,2,3,4。并且令x为获得100分的人(1<=x<=4) .
A说不是我,可以转化成x!=1. B说是C,写成x==3. C说是B,写成 x==2.D说C胡说;写成x!=2.
这四个人中只有一个人说谎,转化为 (x!=1) + (x==3) + (x==2) + (x!=2) == 3.

编程为
*/

#include<stdio.h>
void main()
{
    int x=1;

    while(x<=4)
    {
        if(  ( (x!=1)+(x==3)+(x==2)+(x!=2) ) == 3 )
        {
            printf("得到一百分的是:  %c\n", "ABCD"[x-1] );
            break;
        }

        ++x;
    }
}
2011-01-02 14:47
快速回复:一道有趣的题,急需解答?
数据加载中...
 
   



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

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