文档详情

加密解密代码.doc

发布:2017-04-23约1.48万字共19页下载文档
文本预览下载声明
#includestdio.h #includestring.h #includemath.h #define L 50 #define l 26 int CharAt(char str[],char ch)//此方法是用来寻找字符在字符串中的位置 { int i;//,lg; //lg=strlen(str); for(i=0;i26;i++) { if(str[i]==ch) { return i+1; } } return -1; } int CreatShow(char show[])//创建明文 { int i,shlg; for(i=0;i50;i++) { show[i]=\0; } printf(\n请输入明文!\n); fflush(stdin); gets(show); shlg=strlen(show); return shlg; } int CreatShade(char shade[])//创建密文 { int i,sdlg; for(i=0;i50;i++) { shade[i]=\0; } printf(\n请输入密文!\n); fflush(stdin); gets(shade); sdlg=strlen(shade); return sdlg; } int CreatKey(char key[])//创建密钥 { int i,klg; for(i=0;i26;i++) { key[i]=\0; } printf(\n请输入密钥!\n); fflush(stdin); gets(key); for(i=0;key[i]!=\0;i++) { klg=i+1; } return klg; } int Check(char Data) { if((DataA||DataZ)(Dataa||Dataz)) { printf(输入不正确!\n); return 0; } else if(Data== ) { return 0; } return 1; } void EncodeCasser()//凯撒加密算法 { int i,shlg; char Show[50],Shade[50]; shlg=CreatShow(Show); for(i=0;ishlg;i++) { if(Check(Show[i])) { if(Show[i]=aShow[i]=z) { Shade[i]=Show[i]-32; } else { Shade[i]=Show[i]; Show[i]+=32; } if(Shade[i]+17Z) { Shade[i]-=9; } else { Shade[i]+=17; } } else { printf(本系统不支持空格!请重新输入!\n); return; } } Shade[i]=\0; printf(\n明文是:%s,Show); printf(\n转换后是:%s\n,Shade); } void DncodeCasser()//凯撒解密算法 { int i,sdlg; char Show[50],Shade[50]; sdlg=CreatShade(Shade); for(i=0;isdlg;i++) { if(Check(Shade[i])) { if(Shade[i]=AShade[i]=Z) { Show[i]=Shade[i]+32; } else { Show[i]=Shade[i]; Shade[i]-=32; } if(Show[i]-17a) { Show[i]+=9; } else { Show[i]-=17; } } else { printf(本系统不支持空格!请重新输入!\n); return; } } Show[i]=\0; printf(\n密文是:%s,Shade); printf(\n转换后是:%s\n,Show); } void Casser()//凯撒算法 { char ch; printf(......... 凯撒密码算法 .........\n); printf(......... .........\n); pri
显示全部
相似文档