解题思路:
根据题意可得,b的反码是x 即b-a==z-x x==z+a-b 即s[i]的反码为z+a-s[i]
注意测试数据内有空格,代码需要可以接收空格
参考代码:
#include <iostream> #include <algorithm> using namespace std; int main() { string s; while(getline(cin,s)){ if(s=="!")break; //b的反码是x 即b-a==z-x x==z+a-b 即s[i]的反码为z+a-s[i] for(int i=0;i<s.size();i++){ if(s[i]>='a'&&s[i]<='z')s[i]=(char)('z'+'a'-s[i]); if(s[i]>='A'&&s[i]<='Z')s[i]=(char)('Z'+'A'-s[i]); } cout<<s<<endl; } return 0; }
以上。
0.0分
154 人评分
第一浏览:919 |
C语言程序设计教程(第三版)课后习题8.9 (C++代码)(其实不需要开数组,一个一个字符读入并判断就好了)浏览:939 |
C二级辅导-公约公倍 (C语言代码)浏览:2158 |
C语言训练-排序问题<1> (C语言代码)浏览:1411 |
兰顿蚂蚁 (C++代码)浏览:1225 |
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:998 |
printf基础练习2 (C语言代码)浏览:322 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:368 |
C语言程序设计教程(第三版)课后习题6.6 (C++代码)浏览:649 |
Cylinder (C语言描述+详细分析)浏览:3375 |