刑警对6个嫌疑人的c语言,C语言题目: 某刑侦大队对涉及6 个嫌疑人的一桩疑案进分析,得出初步结论:...

该博客内容涉及使用C语言编程,通过枚举法解决一个涉及6个嫌疑人的案件逻辑分析问题。程序中包含了针对每个嫌疑人的作案可能性进行遍历,并根据给出的条件过滤不可能的组合,以找出可能的作案人员。然而,注意到第二个程序的输出是错误的,可能是因为逻辑判断的条件不正确或不完整。
摘要由CSDN通过智能技术生成

C语言题目: 某刑侦大队对涉及6 个嫌疑人的一桩疑案进分析,得出初步结论:0

某刑侦大队对涉及6 个嫌疑人的一桩疑案进分析,得出初步结论:

1) A、B 至少有一人作案;

2) A、E、F 这3 人中至少有两人参与作案;

3) A、D 不可能是同案犯;

4) B、C 或同时作案,或与本案无关;

5) C、D 中有且仅有1 人作案;

6) 如果D 没有参与作案,则E 也不可能参与作案。

试编程,用枚举法通过逻辑分析找出作案人。

#include

void main()

{

int A,B,C,D,E,F;//0表示没作案,1表示作案

for(A=0;A<2;A++)

for(B=0;B<2;B++)

for(C=0;C<2;C++)

for(D=0;D<2;D++)

for(E=0;E<2;E++)

for(F=0;F<2;F++)

{

if(A==0&&B==0)

continue;

if((A==0&&E==0)||(A==0&&F==0)||(E==0&&F==0))

continue;

if(A==1&&D==1)

continue;

if((B==1&&C==0)||(B==0&&C==1))

continue;

if((C==1&&D==1)||(C==0&&D==0))

continue;

if(D==0&&E==1)

continue;

printf("作案人员有:");

if(A) printf("A ");

if(B) printf("B ");

if(C) printf("C ");

if(D) printf("D ");

if(E) printf("E ");

if(F) printf("F ");

printf("\n");

}

}

#include

void main()

{

int A,B,C,D,E,F;//0表示没作案,1表示作案

for(A=0;A<2;A++)

for(B=0;B<2;B++)

for(C=0;C<2;C++)

for(D=0;D<2;D++)

for(E=0;E<2;E++)

for(F=0;F<2;F++)

{

if(A==0&&B==0)

continue;

if((A==0&&E==0)||(A==0&&F==0)||(E==0&&F==0))

continue;

if(A==1&&D==1)

continue;

if(B+C==1)

continue;

if(C+D==0&&C+D==2)

continue;

if(D==0&&E==1)

continue;

printf("作案人员有:");

if(A) printf("A ");

if(B) printf("B ");

if(C) printf("C ");

if(D) printf("D ");

if(E) printf("E ");

if(F) printf("F ");

printf("\n");

}

}

两个程序只是有两行代码不一样,但是第二个程序输出是错误的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值