墨言ink 2022-05-12 12:09 采纳率: 100%
浏览 31
已结题

请教一下C语言字符串替换加密问题

输入一个字符串完成下列加密
A→D,B→E,C→S,D→T,E→I,F→N,G→Y,H→A,I→B,J→C,K→F,L→G,M→H,N→J,O→K,P→L,Q→M,R→O,S→P,T→Q,U→R,V→U,W→V,X→W,Y→X,Z→Z

我的代码:
#include <stdio.h>
int main() {
char ch ;

printf("请输入一串字符:\n");
do {
    ch = getchar();//当输入一串字符时,先放在缓存区,然后再一个一个取出if((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z')) {
        //ch = ch + key;
    //}
    if(ch='A') {
        ch ='D';
    }
    else if(ch='B')
    {
        ch='E';
    }
    else if(ch='C')
    {
        ch='S';
    }
            else if(ch='D')
    {
        ch='T';
    }
            else if(ch='E')
    {
        ch='I';
    }
            else if(ch='F')
    {
        ch='N';
    }
            else if(ch='G')
    {
        ch='Y';
    }
            else if(ch='H')
    {
        ch='A';
    }
            else if(ch='I')
    {
        ch='B';
    }
            else if(ch='J')
    {
        ch='C';
    }
            else if(ch='K')
    {
        ch='F';
    }
            else if(ch='L')
    {
        ch='G';
    }
            else if(ch='M')
    {
        ch='H';
    }
            else if(ch='N')
    {
        ch='J';
    }
            else if(ch='O')
    {
        ch='K';
    }
            else if(ch='P')
    {
        ch='L';
    }
            else if(ch='Q')
    {
        ch='M';
    }
            else if(ch='R')
    {
        ch='O';
    }
            else if(ch='S')
    {
        ch='P';
    }
            else if(ch='T')
    {
        ch='Q';
    }
            else if(ch='U')
    {
        ch='R';
    }
            else if(ch='V')
    {
        ch='U';
    }
            else if(ch='W')
    {
        ch='V';
    }
            else if(ch='X')
    {
        ch='W';
    }
            else if(ch='Y')
    {
        ch='X';
    }
            else if(ch='Z')
    {
        ch='Z';
    }
    putchar(ch);
}while((ch != '\n')&&(ch !=' '));
return 0;

}
无法得到我想要的结果,想请教一下正确的代码是怎么样的,还有我的代码的问题
十分感谢!

  • 写回答

2条回答 默认 最新

  • 不会长胖的斜杠 后端领域新星创作者 2022-05-12 12:35
    关注

    望采纳,谢谢!

    #include <stdio.h>
    int main() {
    char ch ;
    
    printf("请输入一串字符:\n");
    do {
        ch = getchar();//当输入一串字符时,先放在缓存区,然后再一个一个取出if((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z')) {
            //ch = ch + key;
        //}
        if(ch=='A') {
            ch ='D';
        }
        else if(ch=='B')
        {
            ch='E';
        }
        else if(ch=='C')
        {
            ch='S';
        }
                else if(ch=='D')
        {
            ch='T';
        }
                else if(ch=='E')
        {
            ch='I';
        }
                else if(ch=='F')
        {
            ch='N';
        }
                else if(ch=='G')
        {
            ch='Y';
        }
                else if(ch=='H')
        {
            ch='A';
        }
                else if(ch=='I')
        {
            ch='B';
        }
                else if(ch=='J')
        {
            ch='C';
        }
                else if(ch=='K')
        {
            ch='F';
        }
                else if(ch=='L')
        {
            ch='G';
        }
                else if(ch=='M')
        {
            ch='H';
        }
                else if(ch=='N')
        {
            ch='J';
        }
                else if(ch=='O')
        {
            ch='K';
        }
                else if(ch=='P')
        {
            ch='L';
        }
                else if(ch=='Q')
        {
            ch='M';
        }
                else if(ch=='R')
        {
            ch='O';
        }
                else if(ch=='S')
        {
            ch='P';
        }
                else if(ch=='T')
        {
            ch='Q';
        }
                else if(ch=='U')
        {
            ch='R';
        }
                else if(ch=='V')
        {
            ch='U';
        }
                else if(ch=='W')
        {
            ch='V';
        }
                else if(ch=='X')
        {
            ch='W';
        }
                else if(ch=='Y')
        {
            ch='X';
        }
                else if(ch=='Z')
        {
            ch='Z';
        }
        putchar(ch);
    }while((ch != '\n')&&(ch !=' '));
    return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月20日
  • 已采纳回答 5月12日
  • 创建了问题 5月12日

悬赏问题

  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画