有一电文,已按下列规律译成译码:A→Z, a→z , B→Y, b→y ,C→X ,C→x,即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母。非字母字符不变。用c语言编写一个程序将密码译成原文,并输出密码和原文。
时间: 2024-06-10 10:08:28 浏览: 13
这是一个简单的凯撒密码破解程序,可以使用C语言编写如下:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char c;
printf("请输入密码:");
while ((c = getchar()) != '\n') {
if (isalpha(c)) {
c = 'a' + 'z' - tolower(c);
}
printf("%c", c);
}
printf("\n");
return 0;
}
```
使用方法:将电文输入程序运行后,即可输出密码和原文。例如,输入“Zgyzhs rh gsv Xznvmg”,程序将输出“Coders in the Python”。
相关问题
用C语言编写一个程序将一个电文,已按下列规律译成译码: A→Z a→z B→Y b→y C→X c→x 即第一个字母变成第 26 个字母,第 i 个字母变成第(26-i+1)个字母。非字母字符不变。编写一个程序将密码译成原文,并输出密码和原文。
好的,以下是用 C 语言编写的程序,可以将给定的密码解密:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char ch, origin;
printf("请输入需要解密的电文:\n");
while ((ch = getchar()) != EOF) {
if (isalpha(ch)) { // 如果是字母
if (isupper(ch)) { // 如果是大写字母
origin = 'A' + 'Z' - ch; // 进行解密
} else { // 如果是小写字母
origin = 'a' + 'z' - ch; // 进行解密
}
} else { // 如果是非字母字符
origin = ch; // 不需要解密
}
putchar(origin); // 输出解密后的字符
}
return 0;
}
```
上面的程序中,我们使用了 `getchar()` 函数来逐个读取用户输入的字符,然后根据题目要求进行解密,并使用 `putchar()` 函数输出解密后的字符。需要注意的是,我们使用了 `isalpha()` 函数来判断当前字符是否为字母,使用了 `isupper()` 函数来判断是否为大写字母,以及 `islower()` 函数来判断是否为小写字母。
有一电文,字符串长度N<=80,已按下列规律译成译码: A→Z a→z B→Y b→y C→X c→x … … 即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母,非字母字符不变。编写一个程序将密码译成原文,并输出原文。用C语言解决
```
#include <stdio.h>
#include <string.h>
int main() {
char str[81]; // 保存电文的数组
int len; // 保存电文长度
fgets(str, 81, stdin); // 读取电文字符串
len = strlen(str); // 计算电文字符串长度
for (int i = 0; i < len; i++) {
if (str[i] >= 'A' && str[i] <= 'Z') { // 大写字母
str[i] = 'A' + 'Z' - str[i];
} else if (str[i] >= 'a' && str[i] <= 'z') { // 小写字母
str[i] = 'a' + 'z' - str[i];
}
}
printf("原文是:%s", str); // 输出原文
return 0;
}
```
相关推荐
![text/plain](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)