Description
李先森最近迷上了密码学,决定洗心革面好好学习。今天,他学习了最简单的加密方法——凯撒加密,突发奇想想要来考考你们。他自己制定了这样一个加密规则:大写字母偏移量为3,小写字母偏移量为13。他会给你一串大小写混杂的字符串,你能为他加密吗。
Input
有多组输入,每行为一组,当输入一行为“!"时输入结束。字符串长度不超过50,且均为字母。
Output
输出加密结果。
Samples
input
abc
!
output
nop
AC代码
#include <stdio.h>
#include <ctype.h>
void caesar(char *arr) {
while (*arr != '\0') {
if (isupper(*arr)) {
*arr = ((*arr - 'A' + 3) % 26) + 'A';
}
else if (islower(*arr)) {
*arr = ((*arr - 'a' + 13) % 26) + 'a';
}
arr++;
}
}
int main() {
char arr[50];
while (1) {
scanf("%s", arr);
if (arr[0] == '!') {
break;
}
caesar(arr);
printf("%s\n", arr);
}
return 0;
}