当前位置: 首页 > news >正文

字符加密-C语言实现

任务描述

请编写程序将一串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;
}
   

运行截图:

 

相关文章:

  • 网站说服力营销型网站策划/关于网络推广的方法
  • 一站式推广平台/产品网络营销推广方案
  • 有哪些可以做威客的网站有哪些/优化网站推广排名
  • 企业网站不备案/优化大师在哪里
  • 金融网站模板源代码/seo关键词优化策略
  • 郑州网站建设哪家好怎么样/建网站
  • 字符矩阵内单词搜索
  • C语言经典100例(027,028,029,030)
  • 虚拟机本地搭建Hadoop集群教程
  • 基于A*搜索和深度优先搜索解迷宫问题
  • RPC框架泛调用原理及转转的实践
  • 文档管理系统采用电子签名的优势
  • 单网口ubuntu主机配置virt-manager传统桥接bridge网络
  • 搜索——P5194 [USACO05DEC]Scales S+P5440 【XR-2】奇迹+P1378 油滴扩展
  • VueRouter编程式路由导航
  • 研一寒假C++复习笔记--程序的内存模型
  • CAD软件中如何标注曲线长度?
  • Vue CLI脚手架