本文实例讲述了C++实现将简单密码译回原文的方法。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
/*
* 作 者: 刘同宾
* 完成日期:2012 年 11 月 28 日
* 版 本 号:v1.0
* 输入描述:
* 问题描述: 有一行电文,已按下面规律译成密码:
* A-->Z a-->z
* B-->Y b-->y
* C-->X c-->x
* 即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母,非字母字符不变
* 要求将密码译回原文。
* 程序输出:
* 问题分析:略
* 算法设计:略
*/
#include<iostream>
using namespace std;
int main()
{
int j,n;
char ch[80];
cout<< "input cipher code:" ;
gets (ch);
cout<< "cipher code:" <<ch<<endl;
j=0;
while (ch[j]!= '\0' )
{
if ((ch[j]>= 'A' )&&(ch[j]<= 'Z' ))
{
ch[j]=155-ch[j];
}
else if ((ch[j]>= 'a' )&&(ch[j]<= 'z' ))
{
ch[j]=219-ch[j];
}
else
{
ch[j]=ch[j];
}
j++;
}
n=j;
cout<< "original text:" ;
for (j=0;j<n;j++)
{
cout<<ch[j];
}
cout<<endl;
return 0;
}
|
运行效果截图如下:
希望本文所述对大家C++程序设计有所帮助。