欢迎来到天天文库
浏览记录
ID:59338679
大小:17.00 KB
页数:7页
时间:2020-09-04
《维吉尼亚的C语言程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、#include#include#includevoidEncry(){charkey[100];charch,temp;intL,i=0,j=0;intt;if(getchar()=='')temp='';printf("请输入密钥:");gets(key);L=strlen(key);for(t=0;t='A'&&key[j%L]<='Z'){key[t]=key[j%L]+32;}j++;}printf("输入明文:");while((ch=getchar())
2、!=''){if(ch==''){i++;continue;}if(ch>='a'&&ch<='z'){printf("%c",(ch-'a'+key[j%L]-'a')%26+'A');j++;}if(ch>='A'&&ch<='Z'){printf("%c",(ch-'A'+key[j%L]-'a')%26+'A');j++;}if(j%L==0)printf("");i++;}putchar(ch);}voidDecry(){charkey[100];charch,temp;intL,i=0,j=0;intt;if(getchar()=='')temp=
3、'';printf("请输入密钥:");gets(key);L=strlen(key);for(t=0;t='A'&&key[j%L]<='Z'){key[t]=key[j%L]+32;}j++;}printf("输入密文:");while((ch=getchar())!=''){if(ch==''){i++;continue;}if(ch>='A'&&ch<='Z'){printf("%c",(ch+26-'A'-key[j%L]+'a')%26+'a');j++;}if(j%L==0)printf("");i++;}pu
4、tchar(ch);}intExit(){exit(0);}intmain(){charch;for(;;){printf("请输入你的操作(e/E加密;d/D解密;q/Q退出):");ch=getchar();if(ch=='e'
5、
6、ch=='E')Encry();elseif(ch=='d'
7、
8、ch=='D')Decry();elseif(ch=='q'
9、
10、ch=='Q')Exit();else{printf("输入命令错误!");putchar(getchar());continue;}}return0;}
此文档下载收益归作者所有