黑马程序员技术交流社区

标题: 黑马四周年庆典的悬赏提大家都会做吗 急求答案学习一下 [打印本页]

作者: DUKEMAN    时间: 2015-8-4 22:44
标题: 黑马四周年庆典的悬赏提大家都会做吗 急求答案学习一下
新手只会前两个,从第三个就是加密的就迷茫了 求大神解答3、编程实现对键盘输入的英文名句子进行加密。用加密方法为:当内容为英文字母时,用26字母中的其后三个字母代替该字母,若为其它字符时不变。比如245a95n加密后是245bcd95opq。


作者: DUKEMAN    时间: 2015-8-5 09:20
怎么还没人回复答案
作者: flywithde    时间: 2015-8-5 09:47
将字符存在数组中,新建个字符数组存放加密后的字符,然后对原数组一个个遍历比较就好了
作者: wowthe1st    时间: 2015-8-5 12:15
这不着急,基础先打好,不会做也没关系的,
这些都只是一些思想问题,不是技术问题,
但是思想要有技术做前提,不会的话就耐心提升技术就好了,
思想后面自然就会有了
作者: Maruka    时间: 2015-8-5 19:06
先判断有哪几种情况:1.数字时不变 2.当为英文时分两种,字母在X之后和在X之前。
再建个数组遍历下就好了。
作者: DUKEMAN    时间: 2015-8-5 19:57
wowthe1st 发表于 2015-8-5 12:15
这不着急,基础先打好,不会做也没关系的,
这些都只是一些思想问题,不是技术问题,
但是思想要有技术做前 ...

嗯  确实 心太急了,很多知识点都是走马观花,记不得太多
作者: DUKEMAN    时间: 2015-8-5 19:58
Maruka 发表于 2015-8-5 19:06
先判断有哪几种情况:1.数字时不变 2.当为英文时分两种,字母在X之后和在X之前。
再建个数组遍历下就好了。 ...

谢谢 一个一个解决,我先想想这个
作者: DUKEMAN    时间: 2015-8-6 11:04
我会随时关注 原帖的答案的  黑马加油!!!
作者: 313500313    时间: 2015-8-6 12:12
#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个小时然后现在差点看不懂   
各位兄弟有没有这种情况   费死劲写出来的过后感觉这个问题自己并不算掌握
作者: DUKEMAN    时间: 2015-8-6 13:01
用楼上的代码是这样的  是版本问题吗

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

expected expression 什么意思

expected expression 什么意思





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2