先说思路:首先输入字符串到数组中,之后再将其进行位移,注意位移后可能会不是26个字母之一,所以要加上判断语句进行判断,如果不是那就要将其多出来的数进入到下一个26字母表之中。
#include <stdio.h>
#include <string.h>
int main() {
int n;
char s[51];
scanf("%d", &n);
scanf("%s", s);
for (int i = 0; i < strlen(s); i++) {
s[i] = ((s[i] - 'a' + n) % 26) + 'a';
}
printf("%s\n", s);
return 0;
}