题目描述
从键盘输入一批字符,以@结束,按要求加密并输出。
输入
从键盘输入一批字符,占一行,以@结束。
输出
输出占一行
加密规则:
1)所有字母均转换为小写。
2)若是字母'a'到'y',则转化为下一个字母。
3)若是'z',则转化为'a'。
4)其它字符,保持不变。
样例输入
Kyh520@
样例输出
lzi520
代码展示:
#include <stdio.h>
int main() {
char ch; //定义变量
while (1) { //创建一个无限循环
scanf("%c", &ch); //依次输入字符
if (ch >= 'A' && ch <= 'Z') { //满足加密规则1:所有字母均转换为小写
ch += 32; //进行大写向小写的转换
if (ch >= 'a' && ch < 'z') //在a~y之间的所有字母加一处理
ch += 1;
else if (ch == 'z') //对输入的字母z单独转换为a处理
ch = 'a';
} else if (ch >= 'a' && ch < 'z')
ch += 1;
else if (ch == 'z')
ch = 'a';
else if (ch == '@') //如果遇到@直接结束程序,跳出循环
break;
printf("%c", ch);
}
return 0;
}
此题需要大家掌握字母的大小写转换,还有对字符的判断等,整体来说难度不是很大。

29万+

被折叠的 条评论
为什么被折叠?



