用c语言按规律译成密码(A→Z、B→Y、C→X、a→z、b→y、c→x…,非字母字符不变)。要求编程将密码译回原文,并输出密码和原文。
时间: 2024-05-15 15:13:04 浏览: 149
下面是用C语言实现的代码:
```c
#include <stdio.h>
#include <ctype.h> // 包含isalpha()、toupper()和tolower()函数
int main() {
char ch;
printf("请输入一个字符串:\n");
while ((ch = getchar()) != '\n') {
if (isalpha(ch)) { // 如果是字母
if (isupper(ch)) { // 如果是大写字母
ch = 'A' + 'Z' - ch; // 按规律转换
} else { // 否则是小写字母
ch = 'a' + 'z' - ch; // 按规律转换
}
}
printf("%c", ch); // 输出密码
}
printf("\n请输入密码:\n");
while ((ch = getchar()) != '\n') {
if (isalpha(ch)) { // 如果是字母
if (isupper(ch)) { // 如果是大写字母
ch = 'A' + 'Z' - ch; // 按规律转换
} else { // 否则是小写字母
ch = 'a' + 'z' - ch; // 按规律转换
}
}
printf("%c", ch); // 输出原文
}
return 0;
}
```
这个程序可以接收用户输入的字符串,然后将其中的字母按照规律转换成密码并输出。同时,它也可以接收用户输入的密码,然后将其中的字母按照规律转换回原文并输出。需要注意的是,非字母字符不需要转换,直接输出即可。
阅读全文