题目描述
从键盘输入一批字符,以@结束,按要求加密并输出。
输入
从键盘输入一批字符,占一行,以@结束。
输出
输出占一行
加密规则:
1)、所有字母均转换为小写。
2)、若是字母'a'到'y',则转化为下一个字母。
3)、若是'z',则转化为'a'。
4)、其它字符,保持不变。
样例输入
Kyh520@
样例输出
lzi520
思路:
要明白字符字符是按ASCII码转化为整数存储,要对字符进行转换,对字符所对应的ASCII值进行转换即可。通过循环来依次遍历每个字符,再通过if,else if 等分支语句进行判断,看是否需要转换。
代码:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
char str;
while(1) //死循环
{
scanf("%c", &str);
if (str == '@') //判断结束循环的条件
{
break; //结束循环
}
if (str >= 'A' && str <= 'Z')
{
str += 32; //将所有大写字母转换为小写
}
if (str <= 'y' && str >= 'a')
{
str += 1; //将'a'到'y'及之间的字母转化为下一个字母
}
else if (str == 'z')
{
str = 97; //将'z'转化为'a'
}
printf("%c", str);
}
return 0;
}