所以我被困在这里,不知道为什么这行不通。
do{
char cf;
scanf(" %c",&cf);
}while(cf!='s' || cf!='S');
按S或s并不会结束循环。
最佳答案
首先,由于cf
超出了检查条件的范围,因此甚至不应编译。
第二。由于cf
始终为“ not s or not S”,因此将始终为真。
这是解决问题的方法:
char cf;
do{
scanf(" %c",&cf);
}while(cf!='s' && cf!='S');
注意:您也可以这样写条件,这与上面的逻辑等效:
while(!(cf=='s'||cf=='S'))
关于c - 字符比较无法结束循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20576631/