c语言加密电码,输入一串字符,将字母变成其后的第4个字母,其他字符不变。
时间: 2024-10-17 14:03:56 浏览: 10
在C语言中,我们可以创建一个简单的程序来实现这个加密电码功能,也就是 Caesar Cipher(凯撒密码),其中每个字母向后移动四位。这里是一个基本的示例:
```c
#include <stdio.h>
#include <ctype.h>
char caesar_encrypt(char ch) {
if (isalpha(ch)) { // 检查字符是否为字母
ch = ((ch - 'a' + 4) % 26) + 'a'; // 对于小写字母,加上4并取模26避免超出'a-z'范围
if (ch > 'z') ch -= 26; // 如果超过z,减去26回退到a
}
return ch;
}
int main() {
char input[100];
printf("请输入一串字符: ");
fgets(input, sizeof(input), stdin);
input[strcspn(input, "\n")] = '\0'; // 移除换行符
for (int i = 0; input[i]; i++) {
input[i] = caesar_encrypt(input[i]);
}
printf("加密后的字符串: %s\n", input);
return 0;
}
```
在这个程序中,`caesar_encrypt`函数负责加密操作,它会检查字符是否为字母,并按照指定规则进行移动。在主函数中,用户输入的字符串会被遍历并加密。
阅读全文