#include <iostream>
using namespace std;
int main()
{
char input, letter1,letter2;
cout << "Enter a letter: ";
cin >> input;
if ( (input >= 'A' && input >= 'Z') || (input <= 'a' && input <= 'z') )
{
if ( (input >= 'A' && input >= 'X') || (input <= 'a' && input <= 'x') )
{
letter1 = input + 1;
letter2 = input + 2;
cout << "Your letter trio today is " << input << letter1 << letter2<<".\n";
}
else if ( input == 'Y' || input == 'y' )
{
letter1 = input + 1;
cout << "Your letter trio today is " << input << letter1 <<".\n";
}
else
{
cout << "Your letter trio today is " << input <<".\n";
}
}
}
如果输入y,我的输出变为yz {。如果我输入Y,我的输出变为YZ [。如果我输入Z,我的输出变为Z [。有任何想法吗?谢谢你们
答案 0 :(得分:0)
欢迎使用ASCII字符表示! C ++标准只要求数字表示是连续的,但最常见的实现使用ASCII。 Y的ASCII码是0x59。 0x59 + 1是Z的ASCII码的0x5A。只是猜猜ASCII码0x5B的字符是什么?是的,它是 [
,所以你的输出是正常的......
同样,小写y的ascii代码是0x79,而{
的ascii代码是0x7B