一、输入一个大写字母,输出字母表中它前面的字母和后面的字母。如果输入的字母是A或Z,则分别输出提示信息“没有前面的字母”或“没有后面的字母”。
代码:
#include <stdio.h>
int main (){
char ch;
printf("输入一个大写字母:");
scanf("%c", &ch);
if (ch>65&&ch<90) {
int pre = ch - 1;
int lat = ch + 1;
printf("%c前面的字母为%c,后面的字母为%c", ch, pre, lat);
}
else if (ch == 65) {
printf("没有前面的字母");
}
else {
printf("没有后面的字母");
}
return 0;
}
测试结果:
总结:同样依据ASCII码及if语句来做题。写代码过程中出现一个错误:scanf("%c\n",&ch); 这里语句中加了%n换行,那么一直在输入状态,无法执行后续的程序语句。