加密字符
【问题描述】
在情报传递过程中,为了防止情报被截获,往往需要用一定的方式对情报进行加密。简单的加密算法虽然不足以完全避免情报被破译,但仍然能防止情报被轻易识别。我们给出一种加密算法,对给定的一个明文字符串(括号中是一个“原文 -> 密文”的例子):
(1)明文字符串中所有的字母都按字母表顺序被循环左移了三个位置(deac -> abxz),其他非字母的字符不变;
(2)逆序存储(abxz ->zxba)。
编写程序,输入明文字符串(含空格),输出加密后的密文字符串。输出结束要换行。
【输入形式】
输入一行,包含一个字符串,其长度小于80个字符。
【输出形式】
输出加密字符串。
【样例输入】
Hello! Ace 30
【样例输出】
03 bzX !liibE
#include<stdio.h>
#include<string.h>
int main(void)
{
int j,q,c=0;
char a[20];
gets(a);
for(j=0;j<strlen(a);j++)
{
if((a[j]<='Z'&&a[j]>='D')||(a[j]<='z'&&a[j]>='d'))
a[j]=a[j]-3;
else if ((a[j]<='C'&&a[j]>='A')||(a[j]<='c'&&a[j]>='a'))
a[j]=a[j]+23;
}
for (q=strlen(a)-1;q>=0;q--)
printf("%c",a[q]);
printf("\n");
return 0;
}