栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

字符串替换 — C语言【由特殊到一般,找规律,定公式】

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

字符串替换 — C语言【由特殊到一般,找规律,定公式】

题目:

本题要求编写程序,将给定字符串中的大写英文字母按以下对应规则替换:

原字母对应字母
AZ
BY
CX
DW
XC
YB
ZA

输入格式:

输入在一行中给出一个不超过80个字符、并以回车结束的字符串。

输出格式:

输出在一行中给出替换完成后的字符串。


思路:

由题意可知,26个大写字母中,可以分为前13个(A-M)和后13个(N-Z)两组,第一组的字母由小到大,第二组的字母由大到小;通过举例,可以发现其中转化规律,如下图:

可得,由小变大公式:rev='Z'-(ch-'A');   由大变小公式:rev='A'+('Z'-ch);

之后再研究发现,这两个公式是等价的,故选择其中一个公式即可满足题目要求,此时不需要再分为两组进行操作。


代码:

#include
int main(){
    char ch;
    while((ch=getchar())!='n'){
        if(ch>='A'&&ch<='Z'){
            char rev;
             rev='A'+('Z'-ch);
            printf("%c",rev);
            
        }
        else{                //非大写字母,原样输出
            printf("%c",ch);
        }        
    }
    return 0;
}

结果:


★觉得还不错的话,就点个赞吧☛

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/876537.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号