化身灵蝶子 @ 2020-06-16 22:50:37
#include<stdio.h>
int main()
{
char x[50];
int n;
scanf("%d", &n);
getchar();
gets(x);
for (int i = 0; x[i] != '\0'; i++)
{
if (x[i] + n > 'z')
{
printf("%c", x[i] + 'n' - 'z' + 'a'-'1');
}
else
printf("%c", x[i] + n);
}
return 0;
}
by Bbaka @ 2020-06-16 22:56:15
@化身灵蝶子
printf("%c", x[i] + 'n' - 'z' + 'a'-'1');
这里的 n
和 1
不用加引号
然后读入建议用cin或者scanf
by 不会取名 @ 2020-07-19 14:26:48
@化身灵蝶子 1.char 最多127,直接加会越界。 2.当 n 比较大时 x[i] + n - 'z' + 'a'-1 不在小写字母范围内。