题解 | #字符串加解密#
字符串加解密
https://www.nowcoder.com/practice/2aa32b378a024755a3f251e75cbf233a
#include <stdio.h>
#include <string.h>
int main() {
char in[1000];
char out[1000];
int D = 'a'-'A';
while(~scanf("%s",in))
{
scanf("%s",out);
int in_len = strlen(in);
int out_len = strlen(out);
int i,j;
for(i=0;i<in_len;i++)
{
if(in[i]>='a' && in[i]<'z')
{
in[i] = in[i]-D+1;
}else if(in[i] == 'z'){
in[i] = 'A';
}else if(in[i]>='A' && in[i]<'Z')
{
in[i] = in[i] +D+1;
}else if(in[i] == 'Z')
{
in[i] ='a';
}else if(in[i]>=0 &&in[i]<'9')
{
in[i]+=1;
}else if(in[i] == '9')
{
in[i] = '0';
}
}
for(i=0;i<out_len;i++)
{
if(out[i]>'a' && out[i]<='z')
{
out[i] = out[i]-D-1;
}else if(out[i] == 'a'){
out[i] = 'Z';
}else if(out[i]>'A' && out[i]<='Z')
{
out[i] = out[i] +D-1;
}else if(out[i] == 'A')
{
out[i] ='z';
}else if(out[i]>'0' &&out[i]<='9')
{
out[i]-=1;
}else if(out[i] == '0')
{
out[i] = '9';
}
}
printf("%s\n",in);
printf("%s",out);
}
}
查看2道真题和解析