【每日例题】蓝桥杯 C语言 凯撒加密
凯撒加密
题目
题目描述
给定一个单词,请使用凯撒密码将这个单词加密。
凯撒密码是—种替换加密的技术,单词中的所有字母都在字母表上向后偏移3位后被替换成密文。即α变为d, b变为e,·,w变为z,Z变为a,g变为b,z变为c。
输入描述
输入格式:
输入一行,包含一个单词,单词中只包含小写英文字母,单词中的亨母个数不超过100.
输出描述
输出—行,表示加密后的密文。
输入输出样例
示例
输入输出样例
示例
输入
lanqiao
输出
odqtldr
运行限制
。最大运行时间:1s·最大运行内存:256M
思路分析
题目要求:
1.单词中的所有字母都在字母表上向后偏移 3 位后被替换成密文。即 a 变为 d,b 变为 e,⋯,w 变为z,x变为 a,y 变为 b,z 变为 c。
2.单词中只包含小写英文字母,单词中的字母个数不超过 100
思路分析:
1.建立数组,输入字符串,数组最大容纳限度为99。
2.使用if判断输入字符串是否都为小写字母。
3.每位字母ascll码往后移动三位,若字母为x,y,z则变为a,b,c。
4.输出按数组形式输出。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | #include<stdio.h> #include<string.h> int main() { int i,l; char ch[99]; gets(ch); l=strlen(ch); for (i=0;i<l;i++) { if ((ch[i]>= 'a' )&&(ch[i]<= 'z' )) { if ((ch[i]>= 'a' )&&(ch[i]<= 'w' )) { ch[i]+=3; } else if (ch[i]== 'x' ) { ch[i]= 'a' ; } else if (ch[i]== 'y' ) { ch[i]= 'b' ; } else if (ch[i]== 'z' ) { ch[i]= 'c' ; } } else { return 0; } } for (i=0;i<l;i++) { printf( "%c" ,ch[i]); } return 0; } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现