请用C语言编程判断是谁做的好事A说:不是我。B说:是C。C说:是D。D说:C胡说
时间: 2024-02-11 09:08:03 浏览: 42
可以使用C语言编程进行判断,代码如下:
```c
#include <stdio.h>
int main() {
int A = 0, B = 0, C = 0, D = 0;
// A说:不是我。
if (!A) {
// B说:是C。
if (C) {
// C说:是D。
if (D) {
// D说:C胡说。
if (!C) {
printf("答案错误\n");
} else {
printf("好事是C做的\n");
}
} else {
printf("答案错误\n");
}
} else {
printf("答案错误\n");
}
} else {
printf("答案错误\n");
}
return 0;
}
```
根据题目描述,有四个人,假设他们分别为A、B、C、D,其中只有一个人说的是真话,根据他们的说法判断好事是谁做的。
首先,假设A说的是真话,那么就排除A做的可能性,因此A为0。
接下来,根据B的说法,如果C做的好事,那么B说的是真话,因此B为1;否则B说的是假话,因此B为0。
根据C的说法,如果D做的好事,那么C说的是真话,因此C为1;否则C说的是假话,因此C为0。
最后,根据D的说法,如果C胡说,那么D说的是真话,因此D为1;否则D说的是假话,因此D为0。
根据上述分析,可以得到四个人的真假情况为:A为0,B为0,C为1,D为1。
最后,根据D的说法,如果C胡说,那么好事不是C做的,因此输出“答案错误”;否则好事是C做的,因此输出“好事是C做的”。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)