1 引言
文本加密=大小写转换+数组处理
2 题目
问题描述
先编写函数EncryptChar,按照下述规则将给定的字符c转化(加密)为新的字符:"A"转化"B","B"转化为"C",... ..."Z"转化为"a","a"转化为"b",... ..., "z"转化为"A",其它字符不加密。编写程序,加密给定字符串。
样例输出
与上面的样例输入对应的输出。
例:
例:
数据规模和约定
输入数据中每一个数的范围。
例:50个字符以内无空格字符串。
例:50个字符以内无空格字符串。
3 源代码
import java.util.*; class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); String s=new String(); s=sc.next(); char[] c=new char[s.length()]; for(int i=0;i<s.length();i++)//输入字符 c[i]=s.charAt(i); for(int i=0;i<s.length();i++)//遍历数组,对字符进行处理 { if(c[i]>='A'&&c[i]<'Z') c[i]++; else if(c[i]>='a'&&c[i]<'z') c[i]++; else if(c[i]=='z') c[i]='A'; else if(c[i]=='Z') c[i]='a'; } for(int i=0;i<s.length();i++)//输出处理后的结果 System.out.print(c[i]); } }
4 思路讲解
第一部分,输入数据,定义字符串,将字符串转换为字符数组。第二部分在对字符进行处理时,不可以把‘z’和‘Z’,一起处理,如果加入if语句里面,“c[i]++”后将会转为另一个字符,而不是题目要求的字符。另外一个问题是,要使用“if else if”语句来处理,这种语句的执行过程是,如果“if”成立,则成立“if”里面的语句,否则去判断“else if”的语句。第三部分输出结果。
分享和帮助是人生一大乐事,希望可以帮助您。本人才疏学浅,如果有不当之处,还请批评指正。同时欢迎大家评论、点赞及转发!