8、编程实现对键盘输入的英文名句子进行加密。用加密方法为:当内容为英文字母时,用26字母中的其后三个字母代替该字母,若为其它字符时不变。比如245a95n加密后是245bcd95opq。(C语言)#include<stdio.h>
void main()
{
void jiami(char b[]);//声明加密函数
char a[30];
printf("请输入一行字符:\n");
scanf("%s",a);
jiami(a);
}
void jiami(char b[])//定义加密函数
{
int i=0;
//int t=strlen(b);
while( i<30)
{
if((b[i]>='A'&&b[i]<='Z')||(b[i]>='a'&&b[i]<='z'))//如果是字母就换后三个字母
{
b[i+3]=b[i+1];
b[i+4]=b[i+2];
b[i]=b[i]+1;
b[i+1]=b[i]+1;
b[i+2]=b[i]+2;
printf("%c%c%c",b[i],b[i+1],b[i+2]);//
i+=3;//下个字母往后挪三位
}
else
{
printf("%c",b[i]);//如果不是字母,就输出本身
i+=1;
}
}
printf("\n");
}
最后打印结果会出现一串烫烫烫烫
比如输入abc结果是bcdededef烫烫烫烫而且只能实现前三个字母加密,这是怎么回事?
|
|