用C++写一个程序实现用凯撒密码对字符串进行加密 输入格式:共两行,一行若干个大写英文字母及空格组成的字符串信息,长度小于255. 输出格式:一行字符串,为上述信息经过凯撒加密后的结果
时间: 2024-05-15 19:19:04 浏览: 70
好的,我明白了。
以下是一个用C语言实现的凯撒密码加密程序:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char plaintext[255];
char ciphertext[255];
int shift;
printf("请输入要加密的字符串:\n");
fgets(plaintext, 255, stdin);
printf("请输入移位数:\n");
scanf("%d", &shift);
int length = strlen(plaintext);
for (int i = 0; i < length; i++)
{
if (plaintext[i] == ' ') // 空格不需要加密
{
ciphertext[i] = ' ';
}
else
{
ciphertext[i] = 'A' + (plaintext[i] - 'A' + shift) % 26; // 加密
}
}
ciphertext[length] = '\0'; // 末尾加上字符串结束符
printf("加密后的字符串为:%s", ciphertext);
return 0;
}
```
请注意,这个程序只适用于大写英文字母的加密。如果你需要加密小写字母或其他字符,需要对程序进行适当修改。
阅读全文