温情 @ 2017-12-12 16:31:24
#include <stdio.h>
#include<string.h>
int main()
{
char password[51];
int n,i,j;
scanf("%d",&n);
getchar();
gets(password);
for(i=0;i<strlen(password);i++)
{
password[i]+=n;
}
for(i=0;i<strlen(password);i++)
{
if(password[i]>'z')
password[i]=password[i]%122+96;
}
printf("%s",password);
return 0;
}
by 温情 @ 2017-12-12 16:34:14
那个getchar()是我用来读取回车的,第一次用scanf读完一个数要按回车的,不加这个getchar那gets就读了一个回车了,也就是空的了。
by 邹榆冬 @ 2017-12-12 18:30:18
你最好把数组开在外面
by 邹榆冬 @ 2017-12-12 18:31:03
_否则就会被随机化_
by 览遍千秋 @ 2017-12-12 19:54:54
不要用gets!你可以到洛谷IDE上试一下,会发现结果不同了,这是Linux和Windows的环境差异导致的