字符加密-C语言实现

news2024/9/23 3:21:04

任务描述

请编写程序将一串5个字符组成的英文字符串译成密码,规则为:例如,将“China”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。例如,字母'A'后面第4个字母是“E”,用“E”代替“A”。因此,“China”应译为“Glmre”。请编写一程序,用赋初值的方法使c1,c2,c3,c4,c55个变量的值分别为'C','h','i','n','a',经过运算,使c1,c2,c3,c4,c5分别变为'G','l','m','r','e'。请输出这5个字符。

本关知识

字符输出

C语言中单个字符的输出有两种方法:一是通过printf函数,二是利用putchar函数。例如:

 
  1. char a = ‘H’;
  2. printf("%c", a);

 
  1. char a = ‘H’;
  2. putchar(a);

编程要求

本关的编程任务是补全EncryptCha\fracter.c文件中main函数,以实现按指定规则对字符加密的功能。 实际的测试样例参见下文。 本关涉及的代码文件EncryptCha\fracter.c的代码框架如下: //包含标准输入输出函数 #include <stdio.h>

 
  1. //定义main函数
  2. int main()
  3. {
  4. char c1,c2,c3,c4,c5;
  5. //请在此添加‘字符加密’的代码
  6. /*****************Begin******************/
  7. /***************** End ******************/
  8. return 0;
  9. }

其中: #include <stdio.h>的意思是包含stdio函数库,使得当前程序可以调用标准输入输出函数库中的函数。 int main()是定义main函数,每个C程序都必须有且只有一个main函数。该函数是整个程序的入口,程序执行会从main函数的第一条语句开始。 int表示main函数的返回值类型。函数结束时需要返回一个整数。 return 0; 是函数返回,这里是从main函数返回,0是返回的整数值。return语句会结束一个函数的运行。

测试说明

本关的测试过程如下:

  1. 平台编译EncryptCha\fracter.c,然后链接相关程序库并生成EncryptCha\fracter.exe
  2. 平台运行EncryptCha\fracter.exe,并以标准方式提供测试输入;
  3. 平台获取EncryptCha\fracter.exe的输出,然后将其与预测输出对比,如果一致则测试通过;否则测试失败。

代码展示:

#include <stdio.h>
//定义main函数
int main()
{
 
    //请在此添加‘字符加密’的代码
/*****************Begin******************/

    char c1,c2,c3,c4,c5;
    scanf("%c%c%c%c%c",&c1,&c2,&c3,&c4,&c5);
       if(c1>='w')
       c1=c1-22;
       else
       c1=c1+4;
       if(c2>='w')
       c2=c2-22;
       else
       c2=c2+4;
       if(c3>='w')
       c3=c3-22;
       else
       c3=c3+4;
       if(c4>='w')
       c4=c4-22;
       else
       c4=c4+4;
       if(c5>='w')
       c5=c5-22;
       else
       c5=c5+4;

   
    printf("%c%c%c%c%c",c1,c2,c3,c4,c5);
    
    /***************** End ******************/
    return 0;
}
   

运行截图:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/171654.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

虚拟电厂负荷控制系统三维可视化监控 | 数字孪生

随着国家“双碳”及“构建以新能源为主体的新型电力系统”等目标的提出&#xff0c;清洁化、数字化越来越成为电力系统面临的迫切需求&#xff0c;负控系统的发展对电力营销现代化建设具有重要的意义。负控管理系统是一个着眼于全面加强电力信息管理的&#xff0c;集负荷控制、…

FMC子卡设计方案原理图:FMC550-基于ADRV9002双窄带宽带射频收发器FMC子卡

FMC550-基于ADRV9002双窄带宽带射频收发器FMC子卡一、产品概述 ADRV9002 是一款高性能、高线性度、高动态范围收发器&#xff0c;旨在针对性能与功耗系统进行优化。该设备是可配置的&#xff0c;非常适合要求苛刻、低功耗、便携式和电池供电的设备。ADRV9002 的工作频率为 …

我的2022年度总结

今天是腊月廿七&#xff0c;又到了写年度总结的时候了&#xff0c;这是写年度总结的第七个年头&#xff0c;希望可以一直坚持写下去。今年是新冠疫情的第三年&#xff0c;疫情管控结束了&#xff0c;同时疫情流行也开始了。我在北京刚全面放开的时候就阳了。用了差不多一周多的…

Go 语言就是在“面向未来”学习(文末附视频)

你好&#xff0c;欢迎学习 Go 语言&#xff01; 我们知道&#xff0c;Go 程序设计语言是由 Robert Griesemer、Rob Pike、Ken Thompson 主持&#xff0c;于 2007 年末开始开发的全新高级编程语言。在 2009 年 11 月开源&#xff0c;并于 2012 年发布了第一个稳定版本&#xff…

基于OpenCv的人脸识别,翻车了居然识别错误。

前言 我们身边的人脸识别有车站检票&#xff0c;监控人脸&#xff0c;无人超市&#xff0c;支付宝人脸支付&#xff0c;上班打卡&#xff0c;人脸解锁手机。 人脸检测是人脸识别系统组成的关键部分之一&#xff0c;其目的是检测出任意给定图片中的包含的一个或多个人脸&#xf…

23种设计模式(十)——原型模式【对象创建】

原型模式 文章目录 原型模式意图什么时候使用原型真实世界类比原型模式的实现原型模式的优缺点亦称:克隆、Clone、Prototype 意图 原型模式属于对象的创建模式。通过给出一个原型对象来指明所有创建对象的类型,然后用复制这个原型对象的方法创建出更多同类型的对象。这就是原…

Tailscale 开源版中文部署指南

目前国家工信部在大力推动三大运营商发展 IPv6&#xff0c;对家用宽带而言&#xff0c;可以使用的 IPv4 公网 IP 会越来越少。有部分地区即使拿到了公网 IPv4 地址&#xff0c;也是个大内网地址&#xff0c;根本不是真正的公网 IP&#xff0c;访问家庭内网的资源将会变得越来越…

大模型算法演进

分布式训练系统包括多个组成部分&#xff0c;如AI集群架构、通信机制、并行技术等。基于这些内容&#xff0c;我们可以设计出不同的大模型算法。下面我们简单讲述下大模型的发展脉络&#xff0c;大模型的结构以及SOTA大模型算法。 大模型发展脉络 随着2017年Transformer结构的提…

中国区域创新能力指数《中国区域创新能力报告》

一、《中国区域创新能力评价报告》2002-2021年 《中国区域创新能力报告》旨在对中国各省、直辖市、自治区的创新能力做一个客观、动态和全面的评价。该报告通过大量的数字和科学的分析框架&#xff0c;对中国区域创新总的能力做了一个较全面的分析&#xff0c;并对各省、直辖市…

与 AI 生成的历史人物聊天是怎样的体验? #Hello History

采用 AI 技术的聊天机器人正在被越来越多的人熟知。近期&#xff0c;一款能够与历史人物对话的软件出现&#xff0c;与古今中外的历史人物对话成为现实&#xff01;会有哪些令人惊叹的强大功能?Hello HistoryHello History 是一款基于人工智能的应用&#xff0c;用户可以与历史…

Redis6学习笔记【part1】安装与启动

redis6学习笔记 1.NoSQL数据库 NoSQL Not Only SQL&#xff0c;不仅仅是SQL&#xff0c;泛指非关系型数据库。NoSQL 不依赖业务逻辑方式存储&#xff0c;而以简单的key-value模式存储。因此大大的增加了数据库的扩展能力。 特点&#xff1a;不遵循SQL标准、不支持ACID&…

力扣sql简单篇练习(一)

力扣sql简单篇练习(一) 1 大的国家 1.1 题目内容 1.1.1 基本题目信息 1.1.2 示例输入输出 1.2 示例sql语句 SELECT name,population,area FROM World WHERE area>3000000 OR population>250000001.3 运行截图 2 组合两个表 2.1 题目内容 2.1.1 基本题目信息 2.1.2…

【数据结构】速速收藏,一文带你参透双向链表各接口实现

目录 &#x1f955;前言&#x1f955;&#xff1a; &#x1f33d;一、双向链表概述&#x1f33d;&#xff1a; 1.双向链表概念&#xff1a; 2.双向链表结构&#xff1a; &#x1f346;二、双向链表接口实现&#x1f346;&#xff1a; 1.工程文件建立&#xff1a; 2.接口…

【Docker应用篇】Docker安装RocketMQ

【Docker应用篇】Docker安装RocketMQCentos 7.4安装DockerDocker安装RocketMQ技术架构安装Centos 7.4安装Docker 1、较旧版本的Docker被称为docker或docker-engine&#xff0c;如果已安装这些&#xff0c;请卸载它们&#xff1a; yum remove -y docker \docker-client \docke…

ubuntu18.04 cuda卸载及安装

1.若电脑上已经安装了其他版本的cuda及显卡驱动&#xff0c;需要完全卸载并删除相关文件&#xff0c;否则会导致安装不成功&#xff0c;执行如下&#xff1a; 1.1卸载cuda,步骤如下: cd /usr/local/cuda-xx.x/bin/ &#xff08;进入你的cuda文件夹下&#xff09; sudo ./cuda-…

流程控制|使用循环结构等完成重复性工作(文末附视频)

本节介绍Go语言中的程序流程控制结构&#xff0c;具体包括以下内容&#xff1a; 循环结构流程控制语句条件分支结构 经过前面两个小节的学习&#xff0c;我们初步掌握了Go语言的语法知识。本小节将介绍循环和条件分支&#xff0c;从而使用少量代码完成大量重复性的操作&#x…

NestJS 项目实战 需求分析(文末附视频)

前言 一般常规的项目立项之初会有一份 MRD&#xff08;Market Requirements Document&#xff0c;市场需求文档&#xff09;用来判断产品的必需性以及价值等。 对于基础项目开发来说&#xff0c;使用 MRD 可能有些重量级&#xff0c;但我们也需要对一个新的基建类型项目做一个…

【快速幂】875. 快速幂

875. 快速幂 文章目录题目描述输入格式&#xff1a;输出格式&#xff1a;数据范围输入样例输出样例方法&#xff1a;快速幂解题思路代码复杂度分析&#xff1a;题目描述 给定 nnn 组 ai,bi,pia_i,b_i,p_iai​,bi​,pi​&#xff0c;对于每组数据&#xff0c;求出 aibimodpia_i…

Numpy常用random随机函数

Numpy常用random随机函数 seed 向随机数生成器传递随机状态种子 只要random.seed( * ) seed里面的值一样&#xff0c;那随机出来的结果就一样。所以说&#xff0c;seed的作用是让随机结果可重现。也就是说当我们设置相同的seed&#xff0c;每次生成的 随机数相同。如果不设置…

冯 • 诺依曼体系结构与操作系统

目录 一、冯 • 诺依曼体系结构 1.1 冯 • 诺依曼体系结构推导 1.2 内存提高效率 1.3 具体案例理解冯 • 诺依曼体系结构 1.4 其他认识 二、操作系统 2.1 操作系统概念 2.2 操作系统的上下层 2.3 管理理念:先描述&#xff0c;再组织 一、冯 • 诺依曼体系结构 1.1 冯 …