凯撒密码 算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include

#include

main()

{int key;char ch;

char str[100];

int i=0;

printf("请输入密钥Key= ");

scanf("%d",&key);

ch=getchar(); //此句很重要,用来接受在执行scanf语句时最后输入的回车符printf("\n" );

printf("请输入明文(英文字符串): ");

gets(str);

do //加密

{

if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z'))

{

str[i]+=key;

if((str[i])>'z'||((str[i])>'Z'&&str[i]<='Z'+3))

str[i]-=26;

i++;

}

}while(str[i]!='\0');

printf("\n密文为: ");

puts(str);

printf("\n解密为: ");

int n=strlen(str);

for(i=0;i<=n-1;i++) //解密

{str[i]-=key;

if((str[i]<'a'&&str[i]>'Z')||(str[i]<'A'))

str[i]+=26;}

puts(str);getchar();getchar();

}

相关文档
最新文档