首页 > 代码库 > 蓝桥杯:算法提高 9-2 文本加密
蓝桥杯:算法提高 9-2 文本加密
时间限制:1.0s 内存限制:256.0MB
问题描述
先编写函数EncryptChar,按照下述规则将给定的字符c转化(加密)为新的字符:"A"转化"B","B"转化为"C",... ..."Z"转化为"a","a"转化为"b",... ..., "z"转化为"A",其它字符不加密。编写程序,加密给定字符串。
样例输出
与上面的样例输入对应的输出。
例:
数据规模和约定
输入数据中每一个数的范围。
例:50个字符以内无空格字符串。
程序:
#include<stdio.h> #include <string.h> #define N 55 int main() { char input[N]; int i=0; scanf("%s",input); for(i=0;i<strlen(input);i++) { if(input[i]>=65&&input[i]<=89) input[i]+=‘\1‘; else if((input[i]>=97&&input[i]<=121)) input[i]+=‘\1‘; else if(input[i]==90)//ok input[i]+=‘\7‘; else if(input[i]==122)//ok input[i]-=‘\71‘; } printf("%s\n",input); return 0; }
虽然这道题做出来了,但是我还有一个疑问,就是下面这块代码中,为什么要减71,我觉得应该减57.但如果减57的话,小写z就会转为大写K。如果大家知道的话还请在评论区留言。
else if(input[i]==122)//ok input[i]-=‘\71‘;
蓝桥杯:算法提高 9-2 文本加密
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。