xiaoyan231 2021-10-13 22:37 采纳率: 80%
浏览 20
已结题

c语言求帮助真不会了

题面描述:
古罗马时期,《高卢战记》有描述恺撒曾经使用密码来传递信息,即所谓的“恺撒加密术”,它是一种循环替代密码,大小写字母各构成一个环。如图所示,对于信件中的每个字母,会用它后面的第t个字母代替。例如当t=4时,“China”加密的规则是用原来字母后面第4个字母代替原来的字母,即字母“A”后面第4个字母是“E”,用“E”代替“A”。因此,“China”应译为“Glmre”。请编写一程序可将任意输入的5个字符加密(用它后面的第t个字母代替)。
加密

输入:
第一行输入五个英文字符,以空格间隔。
第二行输入一个整数t。

输出:
输出加密后的字符,字符之间无需空格间隔。

示例输入:
C h i n a
4

示例输出:
Glmre

  • 写回答

1条回答 默认 最新

  • qfl_sdu 2021-10-13 23:01
    关注
    
    #include <stdio.h>
    int main()
    {
        char buf[6]={0};
        int i,n;
        scanf("%s",buf);
        scanf("%d",&n);
        for (i=0;i<5;i++)
        {
            if( (buf[i]>='a' && buf[i]<='v') || (buf[i]>='A' && buf[i]<='V') )
                buf[i] = buf[i]+4;
            else if( (buf[i]>='w' && buf[i]<='z') || (buf[i]>='W' && buf[i]<='Z'))
                buf[i] = 'a' + (buf[i] + 3 - 'z');
            
        }
        printf("%s",buf);
            
        return 0;
    } 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月5日
  • 已采纳回答 10月28日
  • 创建了问题 10月13日

悬赏问题

  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 MATLAB中streamslice问题
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 51单片机中C语言怎么做到下面类似的功能的函数(相关搜索:c语言)
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端