乐瑜 发表于 2020-12-11 06:47:02

求指正-字符串字母转换为其后3位

程序转换部分出现的问题
/*编写程序,其功能是:从键盘输入一个字符串(全部由英文字母组成),将该串中所有下标为奇数位置上的字母转换为其后第3个字母。例如:字母‘a’转换成字母d,字母‘X’转换成字母‘A’*/
#include<stdio.h>
#define M 50
void main()
{
        char str,s;
        int i;
        scanf("%s",str);
        for(i=0;str!='\0';i++){
                if(i%2!=0){
                        s=str+3;
                }
                else{
                        s=str;
                }
        }
        printf("%s\n",s);
}

jitianmoshen 发表于 2020-12-11 18:53:39

本帖最后由 jitianmoshen 于 2020-12-11 19:59 编辑

#include<stdio.h>
#define M 50
void main()
{
    char str;
    int i;
    scanf("%s",str);
    for(i = 0;str != '\0'; i++)
    {
      if( i % 2 )
      {
            if (('A' <= str && str < 'X') || ('a' <= str && str < 'x'))
                str=str+3;
            else if (str >= 'x' && str <= 'z')
                str = 'c' - ('z' - str);
            else if (str >= 'X' && str <= 'Z')
                str = 'C' - ('Z' - str);
      }
    }
    printf("%s\n",str);
}

乐瑜 发表于 2020-12-12 19:17:50

jitianmoshen 发表于 2020-12-11 18:53


非常感谢{:5_90:}
页: [1]
查看完整版本: 求指正-字符串字母转换为其后3位