c语言问题求助

如题所述

按问题要求可大致分为以下三个步骤分析并解决问题

1、输入字符后先检查是否符合标准,按要求是输入一个大写字母,那么输入非法字符应该让用户重新输入;

2、根据ASCII编码规则,已知字符顺序按ABCDEF...Z排列,那么输入字符-1就是前一个字母,输入字符+1就是后一个字母;

3、对输入个别字符的处理:判断输入的字符是不是A,A前面没有字母;判断字符是不是Z,Z后面没有字母;

代码例子

#include<stdio.h>
int main(){
    a:printf("输入一个大写字母:");
    char c;
    scanf("%c",&c);
    if(c<'A' || c>'Z'){
        printf("输入非大写字母!\n");
        goto a; 
    }
    if(c>'A'){
        printf("前一个字母是:%c\n",c-1);
    }else{
        printf("没有前一个字母!\n");
    }
    if(c<'Z'){
        printf("后一个字母是:%c\n",c+1);
    }else{
        printf("没有后一个字母!\n");
    }
    goto a;
    return 0;
}

温馨提示:答案为网友推荐,仅供参考
相似回答