【发布时间】:2022-08-19 13:18:46
【问题描述】:
无论我输入什么年龄,它都会打印you can drive。有人可以向我解释为什么我的代码给了我错误的答案吗?
#include <stdio.h>
int main()
{
int age;
printf(\"enter your age: \\n\");
scanf(\"%d\",&age);
if (age<=18 && age>=92)
{
printf(\"you cant drive\");
}
else
{
printf(\"you can drive\");
}
return 0;
}
-
请将代码作为文本发布,而不是文本图像。
-
一个人的年龄怎么可能同时是
<= 18和>= 92? -
欢迎来到堆栈溢出!您的问题中需要包含相关代码和错误消息作为文本,not as pictures of text。仅链接到屏幕截图会使人们更难帮助您。要了解有关此社区的更多信息以及我们如何为您提供帮助,请从 tour 开始并阅读 How to Ask 及其链接资源。
-
这是了解“布尔”逻辑的第一件事。如果你想要所有 18 岁以下的人,以及所有 92 岁以上的人,这是一个“或”条件,不是一个“和”条件。如果是他们的年龄小于等于18岁,或者如果他们的年龄大于或等于 92,那么您要打印该消息。 (或者无论你做什么。我看不到你的实际代码。)
-
@jarmod 92 岁的头部移植到 18 岁的身体上。可能 - 是的,也许不是现在,但很可能在不久的将来发生。
标签: c if-statement logic