在计算机中,字母都是以二进制存储的,一些基础的字符在计算机中都有相应的表示,也就是常听的ASCII码,下面附上一张字母的ASCII表
字母是能用ASCII码直接表示的,如字符'65'就代表字符'A',由上表可知,字母的ASCII码都是相邻的,所以可以对除'A','Z','a','z'外进行直接加减位数;通过已知的字母即可加减得到想要的字母;
下面附上该题的代码:
#include<stdio.h>
int main()
{
char word;
scanf("%c",&word); //字符占位符为%c,字符串蔡为%s,还要注意word前的&!!
printf("%c,%c,%c",word-1,word,word+1);
return 0 ;
}
如果想要包含a,z的,则应判断情况,如果是'a''z'则应分别输出对应情况如下:
#include<stdio.h>
int main()
{
char word;
scanf("%c",&word);
if((word>'a')&&(word<'z'))
{
printf("%c %c %c",word-1,word,word+1);
}
else if(word=='a')
{
printf("none %c %c",word,word+1);
}
else
{
printf("%c %c none",word-1,word);
}
return 0;
}