简单粗暴,注意细心
看了讨论后发现可以直接一一对应直接翻译,不用这么多ifelse, 妙啊!
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
while (cin >> str)
{
for (int i = 0; i < str.size(); i++)
{
if (str[i] >= 'A' && str[i] < 'Z')
{
//变成小写
str[i] = str[i] + 33;
}
else if (str[i] == 'Z')
{
str[i] = 'a';
}
else if (str[i] >= 'a' && str[i] <= 'c')
{
str[i] = '2';
}
else if (str[i] >= 'd' && str[i] <= 'f')
{
str[i] = '3';
}
else if (str[i] >= 'g' && str[i] <= 'i')
{
str[i] = '4';
}
else if (str[i] >= 'j' && str[i] <= 'l')
{
str[i] = '5';
}
else if (str[i] >= 'm' && str[i] <= 'o')
{
str[i] = '6';
}
else if (str[i] >= 'p' && str[i] <= 's')
{
str[i] = '7';
}
else if (str[i] >= 't' && str[i] <= 'v')
{
str[i] = '8';
}
else if (str[i] >= 'w' && str[i] <= 'z')
{
str[i] = '9';
}
}
cout << str << endl;
}
return 0;
}


京公网安备 11010502036488号