#include <iostream>
using namespace std;
int main()
{
char ch;
cin>>ch;
ch=(ch>='A'&&ch<='Z')?(ch+32):ch;
cout<<ch<<endl;
return 0;
}
我将它改写了一下,就直接加了一行:ch=(ch>='a'&&ch<='z')?(ch-32):ch;那为什么就不行了呢?我觉得可以的。可是我运行之后发现小写乐意转换为大写,大写却还是大写!想了好久还是不知道这是为什么!
#include <iostream>
using namespace std;
int main()
{
char ch;
cin>>ch;
ch=(ch>='A'&&ch<='Z')?(ch+32):ch;
ch=(ch>='a'&&ch<='z')?(ch-32):ch;
cout<<ch<<endl;
return 0;
}
参考资料:c++