逗逗泡泡的保密电文

逗逗泡泡的保密电文

时间: 1ms        内存:128M

描述:

某电报局的电文保密的规律是将每个英文字母变成其后的第4个字母(很原始的那种啦),如A变成E,a变成e。最后四个字母(W,X,Y,Z或w,x,y,z)又变成前4个字母(A,B,C,D或a,b,c,d).非字母字符不变。输入一行字母,要求输出对应的加密后的文字

输入:

一行字符串

输出:

改变后的字符串

示例输入:

I am 20 years old.

示例输出:

M eq 20 cievw sph.

提示:

参考答案(内存最优[920]):

#include<string.h> 
#include<stdio.h> 
int main()
{
	char a[100];
	gets(a);
	int changdu=strlen(a);
	for(int i=0;i<changdu;i++)
	{
		if((a[i]>='a'&&a[i]<='v')||(a[i]>='A'&&a[i]<='V'))
			a[i]+=4;
		else if((a[i]>='w'&&a[i]<='z')||(a[i]>='W'&&a[i]<='Z'))a[i]-=22;
		else a[i]=a[i];

	}
	puts(a);
	return 0;
}

参考答案(时间最优[0]):

#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
    char str[81];
    gets(str);
    int i=0;
    while (str[i]!='\0')
    {
        if ((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z'))
        {
            str[i]=str[i]+4;
            if ((str[i]>'Z'&&str[i]<='Z'+4)||(str[i]>'z'&&str[i]<='z'+4))
                str[i]=str[i]-26;
        }
        i++;
    }
    puts(str);
    return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注