利用指针作函数参数,设计一函数对字母进行简单加密,把当前的字母变成后面第3个字母,如最后三个字母x、y

编写一个程序实现如下功能:利用指针作函数参数,设计一函数对字母进行简单加密,把当前的字母变成后面第3个字母,如最后三个字母x、y、z变成字母a、b、c。再设计一函数把加密... 编写一个程序实现如下功能:利用指针作函数参数,设计一函数对字母进行简单加密,把当前的字母变成后面第3个字母,如最后三个字母x、y、z变成字母a、b、c。再设计一函数把加密字符还原。
参考答案中的加密函数是:
void jiami(char *ch)
{ char *p=ch;
while(*p!='\0')
{ if(*p>='a' && *p<='z'|| *p>='A'&& *p<='Z')
{*p=*p+3;
if(*p>'Z'&&*p<'a' ||*p>'z') *p=*p-26;}
++p;
}
}
为什么要减26呢?
谢谢您的指点!
展开
 我来答
mitch333
推荐于2018-05-08
知道答主
回答量:17
采纳率:0%
帮助的人:16.6万
展开全部
字符串内存中是ascii码表示:
a 97
b 98
c 99
x 120
y 121
z 122
为什么要减26呢 一看就明白
x->a =120+3-26=97即a
z->b=121+3-26=98 即b
z->c =122+3-26=99 即c
你肯定忽略了 *p=*p+3;
这行代码 它是先加上3的
希望能帮到你 (*^__^*)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式