输入一个字符串和一个字符掩码,将字符串的每一位与掩码做 ASCII 码的亦或运算,并将亦或得到的 ASCII 码代表的字符替换原字符,输出加密后的字符串(若亦或后 ASCII 码小于32,则加上32)。

输入一个字符串和一个字符掩码,将字符串的每一位与掩码做 ASCII 码的亦或运算,并将亦或得到的 ASCII 码代表的字符替换原字符,输出加密后的字符串(若亦或后 ASCII 码小于32,则加上32)。

#include <stdio.h>
int main()
{
char s[100];
char mask;
scanf("%s %c", s, &mask);
for (int i = 0; s[i]; i++)
{
s[i] ^= mask;
if (s[i] < 32)
s[i] += 32;
}
printf("%s", s);
return 0;
}