我是 C++ 的初学者,正在编写一个接受用户选择并根据它执行操作的程序……我唯一的问题是当用户输入大写选项时……程序将其视为错误选择……就像 if ' e' 是输入数字的选项。如果用户输入了“E”,程序将不会显示“输入数字”消息。我该如何解决?我尽力了,但我无法让它工作..哦,我怎样才能在 Switch case 中添加大写?这是代码的一部分,负责接受用户的选择并根据它采取行动。
#include <iostream>
#include <cstring>
using namespace std;
int main(){
char choice ;
for(;;){
do{
cout << endl ;
cout << "(e)nter." << endl ;
cout << "(d)isplay." << endl;
cout << "(u)pdate." << endl ;
cout << "(r)eset. " << endl;
cout << "(q)uit." << endl;
cout << endl;
cout << "Choose one : " ;
cin >> choice ;
if( !strchr("edurq",choice) && (choice>=97&&choice<=122) ){
cout << "Enter e,d,u or q " << endl;}
else if( !strchr("EDURQ",choice) && (choice<97&&choice>122) ){
cout << "Enter E,D,U or Q " << endl;}
}while( !strchr("edurqEDURQ",choice) );
switch (choice) {
case 'e' : enter(); break ;
case 'd' : display(); break ;
case 'u': update() ; break ;
case 'r' : reset() ;break;
case 'q' : return 0;
}
}
}