用C语言实现对大写字母的加密
时间: 2024-10-14 07:12:42 浏览: 12
在C语言中,我们可以使用简单的字符替换算法来实现大写字母的加密,例如Caesar Cipher(凯撒密码)的一种简单版本。这种加密方法会将字母按照固定的位移量向右移动。以下是一个基本示例,它会将输入的大写字母A到Z替换为字母B到Z,以此类推,超出范围的字母再回到A开始:
```c
#include <stdio.h>
#include <ctype.h>
char encrypt(char letter) {
if (isupper(letter)) { // 检查是否是大写字母
return ((letter - 'A' + shift) % 26) + 'A'; // 加密并保持大写
}
else {
return letter; // 非大写字母直接返回
}
}
int main() {
int shift = 3; // 可调整的位移值,如shift=1为最基础的 Caesar Cipher
char input;
printf("请输入大写字母以进行加密(按回车结束):\n");
while((input = getchar()) != '\n') { // 读取用户输入
putchar(encrypt(input)); // 输出加密后的字符
}
return 0;
}
```
在这个例子中,`shift`变量控制了位移量。你可以通过改变它的值来进行不同的加密。注意这个程序只处理单个大写字母,并假设输入是非数字非标点的大写字母。