C语言加密练习:第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母。非字母字符不变。要求编程序将密码译回原文,并输出密码和原文。

 1 int Afan(char a);
 2
 3 int main()
 4
 5 {
 6
 7 char arr[40] = {"aABX"};
 8
 9 scanf("%s", arr);
10
11 printf("原电文:%s\n", arr);
12
13 //加密电文
14 //注释:如对代码建议请联系QQ:466449822
15 char m_arr[40] = "aaa";
16
17 printf("密电文:");
18
19 for (int i = 0; i < strlen(arr) + 1; i++)
20
21 {
22
23 if ((arr[i] >65 - 1 && arr[i] < 90 + 1) || (arr[i] >97 - 1 && arr[i] < 122 + 1))
24 {
25 arr[i] = Afan(arr[i]);
26
27 }
28 printf("%c", arr[i]);
29
30 }
31
32 while (1);
33
34 return 0;
35
36 }
37
38
39 int Afan(char a)
40
41 { char over;
42
43 char zm[27] = { ‘A‘, ‘B‘, ‘.‘, ‘.‘, ‘Z‘ };
44 if (a > 64 && a < 91)
45 {
46 for (int i = 65; i < 90 + 1; i++)
47 { int j;
48 j = i - 64;
49 zm[j] = i;
50 }
51 }
52 if (a > 96 && a < 123)
53 {
54 for (int i = 97; i < 122 + 1; i++)
55 {
56 int j;
57 j = i - 96;
58 zm[j] = i;
59 }
60 }
61   for (int i = 0; i < 27; i++)
62 {
63   if (a == zm[i])
64
65 {
66    over = zm[26 - i + 1];
67 }
68 }
69    return over;
70 }

结果:

原文地址:https://www.cnblogs.com/maye426/p/9434177.html

时间: 2024-10-10 16:29:44

C语言加密练习:第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母。非字母字符不变。要求编程序将密码译回原文,并输出密码和原文。的相关文章

c语言:请编程序将“China”译成密码,分别用putchar和printf函数输出这5个字符。

请编程序将"China"译成密码,密码规律是:用原来字母后面第4个字母代替原来的字母.分别用putchar和printf函数输出这5个字符. 程序: #include<stdio.h> int main() { char c1='C',c2='h',c3='i',c4='n',c5='a'; c1 += 4; c2 += 4; c3 += 4; c4 += 4; c5 += 4; printf("用printf输出密码为:%c%c%c%c%c\n", c

编程题:密电码译回原文

编程题:有一行电文,已按下面规律译成密码:A->Z B->Y C->X ... a->z b->y c->x ..即第一个字母编成第26个字母,第i个字母变成第(26-i+1)个字母.非字母字符不变.编程输出密码和原文. #include "stdio.h" #include "string.h" void main() { //printf("%d,%d,%d,%d\n",'A','Z','a','z');

关于c++语言密码不回显的改进

我发现上次的超市购物管理系统的密码不回显可能导致数组下表越界 于是进行了改进 如下 char *pass() { char a[20],ch; int i=0; while((ch=getch())!='\r') { if(i<20) { if(ch!='\b') { a[i++]=ch; putchar('*'); } else if(i>0) { i--; putchar('\b'); putchar(' '); putchar('\b'); } } } a[i]='\0'; return

shell 密码输入不显示,Shell输出内容不显示密码,Shell实现有密码自动登录sshpass 应用实践

在很多实践项目中,我们经常会通过SSH来进行认证,如通过SSH拷贝文件,虽然我们可以使用公钥与私钥实现ssh 无密码登录,在不同的服务器上又需要配对相应的密钥,切换用户麻烦等问题,在一些需要交互但会涉及到批量处理的时候,通过shell 密码输入不显示,Shell输出内容不显示密码,Shell实现有密码自动登录会大大的提高工作效率 #! /bin/bash ############################################## #Author:                

【c语言】译密码。将字母变成其后的第4个字母,非字母不变

// 译密码.将字母变成其后的第4个字母,非字母不变 #include <stdio.h> int main() { char c; c = getchar(); while( c != '\n' ) { if( ( c >= 'a' && c <= 'z' ) || ( c >= 'A' && c <= 'Z' ) ) { if( ( c >= 'w' && c <= 'z' ) || ( c >= '

UBUNTU的默认root密码是多少,修改root密码

UBUNTU的默认root密码是多少,修改root密码 | 一.Ubuntu的默认root密码是随机的,即每次开机都有一个新的root密码.我们可以在终端输入命令 sudo passwd,然后输入当前用户的密码,enter, 二.终端会提示我们输入新的密码并确认,此时的密码就是root新密码.修改成功后,输入命令 su root,再输入新的密码就ok了.  三 .分析没有默认的,因为你还没给root设置密码,第一个 user 是在 admin 组 ,所以他可以给 root 设置密码 , sosu

如何设置VBA代码的密码?如何取消VBA代码的密码?

经常有网友问,用Access把软件开发好了,怎么样设置VBA代码的密码?以保护自己的代码不被同事修改.这里简单整理了一下.设置VBA代码的密码及取消VBA代码的密码步骤如下:1.打开任意一个窗体,进入设计视图,按工具栏“查看代码”按钮,如下图: 2.进入代码区再点工具栏“工具”按钮→“属性”,如下图: 3.点“保护”选项,将“查看时锁定工程”按钮打钩→在“查看工程属性的密码”设置你需要的密码,或者是不需要密码就把原有的密码删除即可,如下图: 设置代码如下: Dim a As Stringa =

一个数如果恰好等于不包含它本身所有因子之和,这个数就称为&quot;完数&quot;。 例如,6的因子为1、2、3,而6=1+2+3,因此6是&quot;完数&quot;。 编程序找出N之内的所有完数,并按下面格式输出其因子

问题 1017: [编程入门]完数的判断 时间限制: 1Sec 内存限制: 128MB 提交: 9159 解决: 4243 题目描述 一个数如果恰好等于不包含它本身所有因子之和,这个数就称为"完数". 例如,6的因子为1.2.3,而6=1+2+3,因此6是"完数". 编程序找出N之内的所有完数,并按下面格式输出其因子 输入 N 输出 ? its factors are ? ? ? 样例输入 1000 样例输出 6 its factors are 1 2 3 28 i

Ubuntu中更改默认的root用户密码,以及怎样修改用户密码

新安装的Ubuntu系统中默认的root用户密码是多少?该怎么修改? 如题,相信许多刚接触Ubuntu系统的新手大多会遇到这个问题,那么我们该如何解决这个问题呢?Ubuntu在安装过程中并没有让我们设置root用户密码,但当我们需要获取root用户的权限时,就会让我们输入root用户的密码,如下图, 这就搞得我们一头雾水了.当初我们安装系统的时候只是设置好了一个用户名和用户的密码,并没有设置root用户密码啊,该怎么输入呢?你可能会抱着试一试的心态,输入自己创建的用户的密码,结果当然是密码错误了