A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

新手只会前两个,从第三个就是加密的就迷茫了 求大神解答3、编程实现对键盘输入的英文名句子进行加密。用加密方法为:当内容为英文字母时,用26字母中的其后三个字母代替该字母,若为其它字符时不变。比如245a95n加密后是245bcd95opq。

点评

活动结束后,答案会放到原帖子的内容下面。  发表于 2015-8-5 16:09

13 个回复

倒序浏览
怎么还没人回复答案
回复 使用道具 举报
将字符存在数组中,新建个字符数组存放加密后的字符,然后对原数组一个个遍历比较就好了

点评

用C语言做还是OC啊 我这会儿只记得,OC的可变数组可以添加元素了  发表于 2015-8-5 12:05
回复 使用道具 举报
这不着急,基础先打好,不会做也没关系的,
这些都只是一些思想问题,不是技术问题,
但是思想要有技术做前提,不会的话就耐心提升技术就好了,
思想后面自然就会有了
回复 使用道具 举报
先判断有哪几种情况:1.数字时不变 2.当为英文时分两种,字母在X之后和在X之前。
再建个数组遍历下就好了。
回复 使用道具 举报
DUKEMAN 来自手机 中级黑马 2015-8-5 19:57:33
地板
wowthe1st 发表于 2015-8-5 12:15
这不着急,基础先打好,不会做也没关系的,
这些都只是一些思想问题,不是技术问题,
但是思想要有技术做前 ...

嗯  确实 心太急了,很多知识点都是走马观花,记不得太多
回复 使用道具 举报
DUKEMAN 来自手机 中级黑马 2015-8-5 19:58:39
7#
Maruka 发表于 2015-8-5 19:06
先判断有哪几种情况:1.数字时不变 2.当为英文时分两种,字母在X之后和在X之前。
再建个数组遍历下就好了。 ...

谢谢 一个一个解决,我先想想这个
回复 使用道具 举报
我会随时关注 原帖的答案的  黑马加油!!!
回复 使用道具 举报
#include <stdio.h>
#include <string.h>
int main(int argc, char *argv[])
{
char arr[100];
printf("请输入需加密的句子,由英文和数字构成:\n");
scanf("%s",arr) ;
int len = strlen(arr);
//printf("%s,长度是%d",arr,len);
int i=arr[len-1];
if(i<48||i>57){
int asc=char(arr[len-1]);
arr[len-1] =char(asc+1);
arr[len]=char(asc+2);
arr[len+1]=char(asc+3);
printf("**加密完成**\n");
printf("%s",arr);
}else{
printf("**无需加密**\n");
printf("%s",arr);
}
return 0;
}

这是我写的   写了1个小时然后现在差点看不懂   
各位兄弟有没有这种情况   费死劲写出来的过后感觉这个问题自己并不算掌握
回复 使用道具 举报
用楼上的代码是这样的  是版本问题吗

屏幕快照 2015-08-06 12.59.03 PM.png (164.02 KB, 下载次数: 20)

expected expression 什么意思

expected expression 什么意思
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马