1.题目
三对情侣参加婚礼,三个新郎为A,B,C,三个新娘为X,Y,Z,
有人想知道究竟谁和谁结婚,于是就问新人中的三位,得到如下的提示:
A说他将和X结婚;X说她的未婚夫是C;C说他将和Z结婚。
这人事后知道他们在开玩笑,说的全是假话,那么究竟是谁与谁结婚呢?
2.代码如下
#include<stdio.h>
int main(void)
{
int a, b, c;
for ( a = 1; a <= 3; a++) //举例a的所有可能
{
for ( b = 1; b <= 3; b++) //举例b的所有可能
{
for ( c = 1; c <= 3; c++) //举例c的所有可能
{
if (a!=1&&c!=1&&c!=3&&a!=b&&a!=c&&b!=c) //排除掉所有可能情况
{
printf("%c将嫁给A\n", 'X' + a - 1);
printf("%c将嫁给B\n", 'X' + b - 1);
printf("%c将嫁给C\n", 'X' + c - 1);
}
}
}
}
return 0;
}
3.个人见解
由题可得
A!=X
C!=X
C!=Z
故而得出结果:
A与Z结婚
B与X结婚
C与Y结婚