毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

恺撒密码C++代码

更新时间:2008-7-14:  来源:毕业论文

恺撒密码C++代码
#include<iostream>
using namespace std;//头文件

typedef struct node{
int data;
node *next;
}Node;//定义一个node结构,其结构名为Node

void print(Node *head)
{Node *p;
p=head->next;//定义一个指向输出链表的指针
if(p==NULL){cout<<"无";}
  while(p->next!=NULL){
if(p->data==65){cout<<'A';}else if(p->data==66){cout<<'B';}else if(p->data==67){cout<<'C';}
else if(p->data==68){cout<<'D';}else if(p->data==69){cout<<'E';}else if(p->data==70){cout<<'F';}
else if(p->data==71){cout<<'G';}else if(p->data==72){cout<<'H';}else if(p->data==73){cout<<'I';}
else if(p->data==74){cout<<'J';}else if(p->data==75){cout<<'K';}else if(p->data==76){cout<<'L';}
else if(p->data==77){cout<<'M';}else if(p->data==78){cout<<'N';}else if(p->data==79){cout<<'O';}
else if(p->data==80){cout<<'P';}else if(p->data==81){cout<<'Q';}else if(p->data==82){cout<<'R';}
else if(p->data==83){cout<<'S';}else if(p->data==84){cout<<'T';}else if(p->data==85){cout<<'U';}
else if(p->data==86){cout<<'V';}else if(p->data==87){cout<<'W';}else if(p->data==88){cout<<'X';}
else if(p->data==89){cout<<'Y';}else if(p->data==90){cout<<'Z';}
若图片无法显示请联系QQ752018766,恺撒密码C++代码免费,转发请注明源于
www.lwfree.cn
else if(p->data==121){cout<<'y';}else if(p->data==122){cout<<'z';}
      p=p->next;
        }
        if(p->data==65){cout<<'A';}
     else if(p->data==66){cout<<'B';}
else if(p->data==67){cout<<'C';}
else if(p->data==68){cout<<'D';}else if(p->data==69){cout<<'E';}else if(p->data==70){cout<<'F';}
else if(p->data==71){cout<<'G';}else if(p->data==72){cout<<'H';}else if(p->data==73){cout<<'I';}
else if(p->data==74){cout<<'J';}else if(p->data==75){cout<<'K';}else if(p->data==76){cout<<'L';}
else if(p->data==77){cout<<'M';}else if(p->data==78){cout<<'N';}else if(p->data==79){cout<<'O';}
else if(p->data==80){cout<<'P';}else if(p->data==81){cout<<'Q';}else if(p->data==82){cout<<'R';}
else if(p->data==83){cout<<'S';}else if(p->data==84){cout<<'T';}else if(p->data==85){cout<<'U';}
else if(p->data==86){cout<<'V';}else if(p->data==87){cout<<'W';}else if(p->data==88){cout<<'X';}
else if(p->data==89){cout<<'Y';}else if(p->data==90){cout<<'Z';}
else if(p->data==97){cout<<'a';}else if(p->data==98){cout<<'b';}else if(p->data==99){cout<<'c';}
else if(p->data==100){cout<<'d';}else if(p->data==101){cout<<'e';}else if(p->data==102){cout<<'f';}
else if(p->data==103){cout<<'g';}else if(p->data==104){cout<<'h';}else if(p->data==105){cout<<'i';}
else if(p->data==106){cout<<'j';}else if(p->data==107){cout<<'k';}else if(p->data==108){cout<<'l';}
else if(p->data==109){cout<<'m';}else if(p->data==110){cout<<'n';}else if(p->data==111){cout<<'o';}
else if(p->data==112){cout<<'p';}else if(p->data==113){cout<<'q';}else if(p->data==114){cout<<'r';}
else if(p->data==115){cout<<'s';}else if(p->data==116){cout<<'t';}else if(p->data==117){cout<<'u';}
else if(p->data==118){cout<<'v';}else if(p->data==119){cout<<'w';}else if(p->data==120){cout<<'x';}
else if(p->data==121){cout<<'y';}else if(p->data==122){cout<<'z';}
  cout<<endl;
}恺撒密码C++代码
void casar(Node *head,int key,int count)
{void print(Node *); //输出链表函数声明
void jiemi(Node *n,int count,int key);//解密算法声明
Node *p,*q,*n,*m;//定义结构指针
n=(Node *)malloc(sizeof(Node));
n->next=NULL;
m=n;
q=head;
p=head->next;
 for(int i=0;i<count;i++)
 {
  if(p->data>='a'&&p->data<='z')
  {p->data+=key%26;
  if(p->data>'z'){p->data-=26;}
  p->data-=32;
  }
  q->next=p->next;
  p->next=NULL;
  m->next=p;
  m=p;
  p=q->next;
 }
 cout<<"密文为:";
 print(n);
 jiemi(n,count,key);
}

void jiemi(Node *n,int count,int key)
{void print(Node *);
Node *p,*q,*r,*s;//定义结构指针
r=(Node *)malloc(sizeof(Node));
r->next=NULL;
s=r;
q=n;
p=n->next;
 for(int i=0;i<count;i++)
 {p->data-=key%26;
  if(p->data<'A'){p->data+=26;}
  p->data+=32;
  q->next=p->next;
  p->next=NULL;
  s->next=p;
  s=p;
 p=q->next;}
 cout<<"解密后原文为:";
 print(r);
}

//主函数
void main()
{
void print(Node *);//输出函数声明
void jiemi(Node *n,int count,int key);
void casar(Node *head,int key,int count);
Node *head,*p,*q;
int key,count=0;
char it;
head=(Node *)malloc(sizeof(Node));
head->next=NULL;
q=head;
cout<<"请输入明文:";
cin>>it;
//新建链表算法
while(it!='$')
{p=(Node *)malloc(sizeof(Node));
p->next=NULL;
p->data=it;
q->next=p;
q=p;恺撒密码C++代码
cin>>it;
count++;
}
cout<<"请输入密钥:";
cin>>key;
casar(head,key,count);}85

恺撒密码C++代码下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©lwfree.cn 六维论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。