相当于标题所说的内容。我是这个彩票号码分配的最后一点,我不知道为什么我调试时第二组if / else if语句没有显示。我知道if / else语句是互斥的 - 但是如果两个测试都不应该是if和then 这是代码。
count=0;
while(count<5)
{
if(lottery[count] == user[count])
{
lotto = lottery[count];
cout<<"So, you matched numbers with "<<lotto <<".\n";
tally++;
}
if(tally==5 && count == 5)
{
cout<<"Congratulations, you're the grand prize winner!";
}
else if(tally < 5 && count == 5)
{
cout<<"A total of "<<tally<<" of your lottery picks matched.";
}
else if(tally == 0 && count == 5)
{
cout<<"Caution. The following comment is an inside joke. Read at your own risk.";
cout<<"Bet you feel like a total loser huh? Nothing matched.";
}
count++;
}
我知道为了简单起见,我可能应该用for循环替换while循环但是我对此更加舒服。
答案 0 :(得分:8)
count
块时, 5
永远不会<{1}}。
一旦变为if
,条件就会失败并且循环停止。
答案 1 :(得分:5)
count
永远不会等于5
条件所需的if-else
条件内的count
。如果您在<{em> if-else
之前增加了tally
,那么就可以满足其中一个条件(取决于{{1}}的值)。