问题描述
解决方案
把英文字母变换一下,如D换为AA换为X,B换为Y
解决方案二:
就是获取到输入的字符串,然后对每一位进行判断,如果在区间【dz】或区间【DZ】减3,剩下的加23
解决方案三:
就是获取到输入的字符串,然后对每一位进行判断,如果在区间【dz】或区间【DZ】减3,剩下的加23
解决方案四:
就是获取到输入的字符串,然后对每一位进行判断,如果在区间【dz】或区间【DZ】减3,剩下的加23
解决方案五:
就是获取到输入的字符串,然后对每一位进行判断,如果在区间【dz】或区间【DZ】减3,剩下的加23
解决方案六:
【d-z】 【D-Z】-3 【a-c】【A-C】 +23
解决方案七:
【d-z】 【D-Z】-3 【a-c】【A-C】 +23
解决方案八:
见如下代码(java)
private void test() { String string = ""abcdefguvwxyzABCDEFGUVWXYZ"";// 待加密字符串 String finalString = """";// 加密后的字符串 char[] charArray = string.toCharArray();// 待加密字符串转化为字符数组 for (int i = 0; i < charArray.length; i++) { if((charArray[i] >= 'd' && charArray[i] <= 'z') || ((charArray[i] >= 'D' && charArray[i] <= 'Z'))) { // ASCII码大于100(d)、小于122(z) 或者 大于68(D)、小于90(Z)的字符-3 // 即向前偏移3个字母 charArray[i] = (char) (charArray[i] - 3); } else if ((charArray[i] >= 'a' && charArray[i] <= 'c') || ((charArray[i] >= 'A' && charArray[i] <= 'C'))) { // ASCII码大于97(a)、小于99(c) 或者 大于65(A)、小于67(C)的字符+23 // 也是向前偏移3个字母 charArray[i] = (char) (charArray[i] + 23); } finalString+=charArray[i]; } int a = 'a' z = 'z' A = 'A' Z = 'Z'; Log.d(""test""'a'对应的整数值:"" + a); Log.d(""test""'z'对应的整数值:"" + z); Log.d(""test""'A'对应的整数值:"" + A); Log.d(""test""'Z'对应的整数值:"" + Z); Log.d(""test""abcdefguvwxyzABCDEFGUVWXYZ的凯撒密码加密结果:n"" + finalString); }
解决方案九:
#include
#include
#include
int main()
{
char a[100];//定义一个字符数组
while(gets(a))
{
int t = strlen(a);//用整型变量t保存字符的长度
for(int i=0;i {
if((a[i]>='d'&&a[i]<='z')||(a[i]>='D'&&a[i]<='Z'))//如果第i个字符d和z之间或者是第i个字符在D和Z之间
{
a[i]=(char)(a[i]-3);//第i个字符变为字符-3在ASSCII码中的字符
}
else if((a[i]>='a'&&a[i]<='c')||(a[i]>='A'&&a[i]<='C'))//如果第i个字符a和c之间或者是第i个字符在A和C之间
{
a[i]=(char)(a[i]+23);//第i个字符变为字符+23在ASSCII码中的字符
}
}
printf(""%sn""a);//凯撒密码加密的结果
}
return 0;
}
运行结果:
输入:admin
输出:xajfk
解决方案十:
好难啊,我看不懂啊,呜呜呜,怎么办,是不是要废了