用c语言编写输入4个字符,将每个字符加4后转换成加密字符,如输入“Ab2c”则加密后的字符序列为“Ef6g”。
时间: 2024-10-19 19:09:29 浏览: 60
C语言实现输入一个字符串后打印出该字符串中字符的所有排列
在C语言中,我们可以使用数组和字符加法来实现这个简单的加密过程。这里是一个简单的示例,展示了如何读取四个字符,然后对每个字符增加4并转换回ASCII码表示的字符:
```c
#include <stdio.h>
#include <string.h>
// 加密函数,将字符加上4,并转为对应的字符
char encrypt(char c) {
if (c >= 'a' && c <= 'z') { // 如果是小写字母
return ((c - 'a' + 4) % 26) + 'a'; // 加上4并保持在小写字母范围内
} else if (c >= 'A' && c <= 'Z') { // 如果是大写字母
return ((c - 'A' + 4) % 26) + 'A'; // 同理,但处理大写字母
} else { // 对于其他非字母字符不做处理
return c;
}
}
int main() {
char input[5]; // 假设最多输入4个字符加上终止符
printf("请输入四个字符:");
fgets(input, sizeof(input), stdin); // 读入一行
// 移除末尾的换行符
input[strlen(input) - 1] = '\0';
// 遍历输入的每个字符并加密
for (int i = 0; i < strlen(input); i++) {
input[i] = encrypt(input[i]);
}
printf("加密后的字符序列是:%s\n", input);
return 0;
}
```
在这个例子中,我们假设用户只会输入英文字母,如果输入的是数字或其他特殊字符,则会原样保留。如果你需要更严格的限制输入范围,可以在`encrypt`函数里添加额外检查。
阅读全文