使用char值时,后期测试循环不起作用

时间:2018-12-09 17:17:32

标签: c++ testing post do-loops

我一直在尝试使此代码正常工作,但在进入Char值后测试时遇到麻烦,仅当字符不是“ Y”或“ N”(“ y” “或” n“)由用户输入,但是无论我输入了什么,它都会一直循环播放,同时我还在想是否如果我在保险计划部分中的下面进行同样的操作时是否有可能发生相同的问题代码?任何帮助表示赞赏。

ifelse

1 个答案:

答案 0 :(得分:0)

问题是您的while条件(也是while循环上方几行的if条件):

while (sol != 'Y'|| 'N')

使用双管道“或” ||时,每侧均独立评估。左侧(假设sol =='Y')将评估为False。但是右边的'N'将始终为true,因为字符“ N”不为0(False)。解决方法:

while (sol != 'Y' && sol != 'N')

祝你好运!