用c语言编写一段程序,其功能如下输入一串英文字母,将其加密(小写字母转换为对应的大写字母,大写字母转换为对应的小写字母)后输出。例如:加密后的结果是:aCF 输入样例:
时间: 2024-09-20 18:12:00 浏览: 60
当然可以,这里是一个简单的C语言程序,它会实现您所描述的功能:
```c
#include <stdio.h>
#include <ctype.h>
// 加密函数
char encrypt(char c) {
if (islower(c)) { // 如果字符是小写字母
return toupper(c); // 转换为大写
} else if (isupper(c)) { // 如果字符是大写字母
return tolower(c); // 转换为小写
}
return c; // 非字母字符保持不变
}
int main() {
char input[100];
printf("请输入一串英文字母:");
fgets(input, sizeof(input), stdin);
// 移除fgets获取的最后一行的换行符
input[strlen(input)-1] = '\0';
// 加密并输出
for (int i = 0; input[i]; i++) {
printf("%c", encrypt(input[i]));
}
printf("\n加密后的结果:\n");
return 0;
}
```
当你运行这个程序并输入示例 "aCF",它会输出 "Acf"。
相关问题
用c语言编写一个程序:输入一个字符,若为大写字母,将它转换成小写字母;若为小写字母,将它转换成大写字母;若不是字母,不转换。 获
得输入字符的 C 语言程序如下:
```
#include <stdio.h>
#include <ctype.h>
int main() {
char c;
printf("请输入一个字符:");
scanf("%c", &c);
if (isalpha(c)) { // 如果 c 是字母
if (islower(c)) { // 如果 c 是小写字母
c = toupper(c); // 转换成大写字母
} else { // 如果 c 是大写字母
c = tolower(c); // 转换成小写字母
}
}
printf("转换后的字符是:%c\n", c);
return 0;
}
```
对于输入的字符,我们使用 `scanf` 函数读入,然后判断字符是否是字母,如果是则根据大小写进行转换,最后输出转换后的字符。
关于 Lua 闭包工厂的完整代码,可以参考以下示例:
```lua
function make_adder(n)
return function(x)
return x + n
end
end
add5 = make_adder(5)
print(add5(2)) -- 输出 7
add10 = make_adder(10)
print(add10(2)) -- 输出 12
```
这个代码定义了一个函数 `make_adder`,可以用来生成加法器函数。调用 `make_adder(n)` 会返回一个新的函数,这个函数会把参数与 `n` 相加并返回结果。
最后,关于中文加密,如果你是指密码学中的中文加密算法,那么我需要更具体的信息来回答你的问题。如果是其他类型的中文加密,请详细描述你的需求,我会尽力回答。
c语言编写一个程序,将一个包含大小写字母的纯字母密文串转换为纯大写字母的明文串输出。 加密规则为: 密文字母转换为其对应大写字母的后面第3个大写字母( x y , z 转换为 A , B c )
以下是一个简单的 C 语言程序来实现这个功能:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char ciphertext[1000];
printf("请输入密文:");
fgets(ciphertext, 1000, stdin);
for (int i = 0; ciphertext[i] != '\0'; i++) {
if (islower(ciphertext[i])) {
// 转换为大写字母并向后移动3位
printf("%c", toupper((ciphertext[i] - 'a' + 3) % 26 + 'A'));
} else {
// 非字母字符直接输出
printf("%c", ciphertext[i]);
}
}
return 0;
}
```
首先,我们使用 `fgets` 函数从标准输入读入密文。然后遍历密文中的每个字符,如果是小写字母,就将其转换为大写字母并向后移动3位,最后输出明文。如果不是字母字符,则直接输出。
注意,我们使用 `islower` 函数来检查一个字符是否为小写字母,并使用 `toupper` 函数将其转换为大写字母。我们还使用了 ASCII 码表中字母字符的顺序来进行字符的转换,因为字母字符在 ASCII 码表中是按顺序排列的。
请注意,此程序可能无法应对各种不同情况的输入,如输入包含非字母字符或超过1000个字符等。在实际使用中,需要对输入进行更严格的检查和处理。
阅读全文