利用异或运算对输入的文本进行加密解密输出,用户输入一个文本(字符串,设不超过20个字符),然后输入作为密钥的字符,程序输入加密及解密的字符串。使用C++语言编写
时间: 2023-05-17 07:04:57 浏览: 224
以下是利用异或运算对输入的文本进行加密解密输出的C语言代码:
```c
#include <stdio.h>
#include <string.h>
void encrypt(char *text, char key) {
int len = strlen(text);
for (int i = 0; i < len; i++) {
text[i] ^= key;
}
}
void decrypt(char *text, char key) {
encrypt(text, key);
}
int main() {
char text[21];
char key;
printf("请输入要加密/解密的文本(不超过20个字符):");
scanf("%s", text);
printf("请输入密钥字符:");
scanf(" %c", &key);
encrypt(text, key);
printf("加密后的文本为:%s\n", text);
decrypt(text, key);
printf("解密后的文本为:%s\n", text);
return 0;
}
```
对于输入的文本,我们使用了异或运算进行加密和解密。在加密时,我们将文本中的每个字符与密钥字符进行异或运算,得到加密后的字符;在解密时,我们再次进行异或运算,得到原始的文本字符。
注意,由于用户输入的文本长度不确定,我们需要使用字符串来存储输入的文本。同时,为了避免密钥字符与输入的文本字符混淆,我们在读取密钥字符时使用了空格来清除输入缓冲区中的换行符。
至于"lua closure factory 完整代码"和"中文加密"的问题,我们可以在 ChatGPT 中回答,这里不再赘述。
阅读全文