我有一个奇怪的问题。尝试使用 if 语句和 do-while 循环来验证我的条件,以防 char 变量不等于 'c' 和 'f' 但是当我选择 'c' 或 'C' 或 'f' 或'F' 在不起作用的部分之后仍然显示“错误选择”。当我键入“c”时,我跟踪打印变量(正如您可以看到printf()
下面注释的代码)我可以看到程序接受了“c”但仍显示为错误输入。我已经打过电话#include<stdio.h>
了#include<ctype.h>
。任何人都可以帮助我吗?
char choice;
do
{
printf("\nChoose between Celsius (c) or for Fahrenheit (f):");
scanf(" %c*%c", &choice);
//printf("\nchoice1: %c", choice);
choice = tolower(choice);
//printf("\nchoice2: %c", choice);
if(choice != 'c' || choice != 'f')
printf("\nWrong choice!!");
}while(choice!='c' || choice!='f');