c++ - 有没有其他方法可以使用 else if
问题描述
else if
似乎不起作用,无论我输入什么信息,我都只会收到 if 语句中的第一句话。我尝试了很多东西,但似乎都没有。
我需要if else
声明才能工作,因为我的程序就像工作面试,并且根据我输入的信息,如果我被接受,我应该得到什么。
这是我的代码:
#include <iostream>
#include <string>
using namespace std;
int main ()
{
setlocale(LC_ALL,"");
//Variabler och strings
string kön;
string barn;
int stopp;
int ålder;
//Frågor
cout << "Vad har du för kön? (Kvinna/Man)" << endl;
cin>>kön;
cout << "Hur gammal är du?" << endl;
cin>>ålder;
cout << "Har du barn?" << endl;
cin>>barn;
if(kön=="Kvinna" || "kvinna" && ålder<30 && barn=="Nej" || "nej")
{
cout << "Du är kvalificerad för jobbet eftersom du är under 30 och har inte barn";
}
else if (kön=="Man" || "man" && ålder>30 && barn=="Ja" ||"ja")
{
cout << "Du är inte kvalificerad eftersom du har barn och du är över 30";
}
else if (kön=="Kvinna" || "kvinna" && ålder>30 && barn=="Ja" || "ja")
{
cout << "Du är inte kvalificerad eftersom du är kvinna, har barn och du är över 30";
}
else if (kön=="Man" || "man" && ålder<30 && barn=="Nej" || "nej")
{
cout << "Du är kvalificerad för jobbet eftersom du är man, under 30 och har inte barn";
}
else if (kön=="Kvinna" || "kvinna" && ålder>30 && barn=="Nej" || "nej")
{
cout << "Du är inte kvalificerad eftersom du är kvinna och du är över 30";
}
else if (kön=="Man" || "man" && ålder<30 && barn=="Ja" || "ja")
{
cout << "Du är kvalificerad eftersom du är man och under 30";
}
else if (kön == "Man" || "man" && ålder>30 && barn == "Nej" || "nej")
{
cout << "Du är kvalificerad för jobbet eftersom du är man och du har inte barn";
}
cin>>stopp;
return 0;
}
解决方案
如果您的第一个语句为真,您将仅从“if”获得输出。您如何期望它也会到达 else 块?无论值如何,您的第一个语句始终为真。因为任何非零值在 C 中都将为真/C++。在 C++ (x=="A" || "B")
中将始终返回 true。因为“B”被视为 true。
推荐阅读
- python - 我面临从网站获取表格的挑战
- docker - 运行 docker-compose.cli 几秒钟后,“orderer”节点/docker 容器退出
- c# - WPF 在 ControlTemplate 的情节提要中修改 OneWayToSource 绑定属性
- python - 试图将我的 python 代码变成一个应用程序,以便轻松共享
- python - 给定上下界数组和平均值的python中的置信区间
- aws-codepipeline - CDK中代码管道的跨账户访问
- python-3.x - 如果在 Python 中使用用户名和密码,如何获取 azure 活动目录的 clientID
- amazon-web-services - 如何设置 cloudfront 以使用没有域名的 https?
- ruby-on-rails - 如何正确呈现 HTML 层次结构
- deep-learning - 3D 人脸的移动方式与 2D 照片不同。是否有任何运动分析算法来检测这种差异?