题目描述
从键盘输入一批字符,以@结束,按要求加密并输出。
输入
从键盘输入一批字符,占一行,以@结束。
输出
输出占一行
加密规则:
1)、所有字母均转换为小写。
2)、若是字母'a'到'y',则转化为下一个字母。
3)、若是'z',则转化为'a'。
4)、其它字符,保持不变。
样例输入
Kyh520@
样例输出
lzi520
当看到题目我们可以想到读入字符用getchar,又是多个字符,于是就要用到while(ch=getchar(),ch!='@'),以@结束
isalaph(ch)函数是用来判断是否为字母,如果是接下来再继续进行,将大写字母转化为小写字母,用到tolower()函数,当字母是z是转化为a,是a到y之间包括他们俩就转换为下一位;ch=ch+1是根据字母ascll值进一。
putchar(ch)输出
#include<stdio.h>
#include<ctype.h>
int main()
{
char ch;
while(ch=getchar(),ch!='@')
{
if(isalpha(ch))
{
ch=tolower(ch);
if(ch=='z')
{
ch='a';
}
else
{
ch=ch+1;
}
}
putchar(ch);
}
}