C语言字符串加密和解密算法

2022-05-20 17:23:16   第一文档网     [ 字体: ] [ 阅读: ] [ 文档下载 ]
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。下载word有问题请添加QQ:admin处理,感谢您的支持与谅解。点击这里给我发消息

#第一文档网# 导语】以下是®第一文档网的小编为您整理的《C语言字符串加密和解密算法》,欢迎阅读!
字符串,解密,算法,加密,语言

C语言字符串加密和解密算法

在本实例中要求设计一个加密和解密算法。在对一个指定的字符串加密之后,利用解密函数能够对密文解密,显示明文信息。加密的方式是将字符串中每个字符加上它在字符串中的位置和一个偏移值 5以字符串mrsoft为例,第一个字符m在字符串中的位置为 0那么它对应的密文是“'m'+0+5",即 r

算法思想

main() 函数中使用 while 语句设计一个无限循环,并定义两个字符数组,用来保存,明文和密文字符串,在首次循环中要求用户输入字符串,进行将明文加密成密文的操作, 后的操作则是根据用户输入的命令字符进行判断,输入 1 加密新的明文,输入 2 对刚加密的密文进行解密,输入 3 退出系统。

程序代码

1. #include 2. #include 3. int main() 4. {

5. int result=1; 6. int i; 7. int count=0;

8. char Text[128]={'\0'}; 9. char cryptograph[128]={'\0'}; 10. while(1) 11. {

12. if(result==1) 13. {

14. printf("请输入要加密的明文:\n"); 15. scanf ("%s",&Text);


16. count=strlen(Text); 17. for(i=0;i<count;i++) 18. {

19. cryptograph[i]=Text[i]+i+5; 20. }

21. cryptograph[i]='\0';

22. printf("加密后的密文是:%s\n",cryptograph); 23. }

24. else if(result==2) 25. {

26. count=strlen(Text); 27. for(i=0;i<count;i++) 28. {

29. Text[i]=cryptograph[i]-i-5; 30. }

31. Text[i]='\0';

32. printf("解密后的明文是:%s\n",Text); 33. }

34. else if(result==3) 35. {

36. break; 37. } 38. else 39. {

40. printf("请输入正确的命令符:\n"); 41. }

42. printf("输入1加密新的明文,输入2对刚加密的密文进行解密,输入3退出系统:

\n");

43. printf("请输入命令符:\n"); 44. scanf("%d",&result); 45. }

46. return 0; 47. }


调试运行结果

本实例中,输入了 I love Xichang College 字符串作为例证,因此输出是多个加密后的字符串,结果如下所示:

请输入要加密的明文: I Love Xichang College 加密后的密文是:N

输入1加密新的明文,输入2对刚加密的密文进行解密,输入3退出系统: 请输入命令符: 请输入要加密的明文: 加密后的密文是:Qu}m

输入1加密新的明文,输入2对刚加密的密文进行解密,输入3退出系统: 请输入命令符: 请输入要加密的明文: 加密后的密文是:]ojpjxr

输入1加密新的明文,输入2对刚加密的密文进行解密,输入3退出系统: 请输入命令符: 请输入要加密的明文: 加密后的密文是:Hustnqp

输入1加密新的明文,输入2对刚加密的密文进行解密,输入3退出系统: 请输入命令符:




本文来源:https://www.dywdw.cn/04fd749e1937f111f18583d049649b6648d709e9.html

相关推荐
推荐阅读