黑马程序员技术交流社区
标题:
C语言题
[打印本页]
作者:
曼珠沙华
时间:
2014-12-9 11:31
标题:
C语言题
编程实现对键盘输入的英文名句子进行加密。用的加密方法为:当内容为英文字母时,用26字母中的其后三个字母代替该字母,若为其它字符时不变。比如245a95n加密后是245bcd95opq。请帮我解答下,谢谢!
作者:
郑江
时间:
2014-12-9 11:31
#include <stdio.h>
void main()
{ // 定义一个字符变量,用于存储输入的字符
char c;
// 提示输入
printf("请输入英文句子:");
// 用while循环对输入的每一个字符进行逐一判断
while ((c = getchar()) != '\n')
{
// 用if语句进行判断,条件为:c的值在'A'到'Z'之间
if (c >= 'A' && c <= 'Z')
{
// 用for循环进行加密输出
for (int i = 1; i <= 3; i++)
{
// 用if语句判断,当要输出的值大于'Z'时,从'A'重新进行输出
if (c + i > 'Z')
c = c - 26;
printf ("%c", c + i);
}
}
// 对于不满足上面条件的,继续进行判断,条件为:c的值在'a'到'z'之间
else if (c >= 'a' && c <= 'z')
{
// 用for循环进行加密输出
for(int i = 1; i <= 3, i++)
{
// 用if语句判断,当要输出的值大于'z'时,从'a'重新进行输出
if(c + i > 'z')
c = c - 26;
printf("%c", c + i);
}
}
// 上面条件都不满足的,运行else下面的语句
else
printf("%c",c);
}
printf("\n");
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2