c语言实现:任意输入一个字符串,每个字母往后四个字母作为他的密码,非字母对应它的密码是*号,请按这个规则输出密码
时间: 2023-05-25 17:07:07 浏览: 72
```c
#include<stdio.h>
#include<string.h>
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
printf("加密后的字符串:");
for (int i = 0; i < len; i++) {
if (str[i] >= 'a' && str[i] <= 'z') { // 小写字母
printf("%c", (str[i] - 'a' + 4) % 26 + 'a');
} else if (str[i] >= 'A' && str[i] <= 'Z') { // 大写字母
printf("%c", (str[i] - 'A' + 4) % 26 + 'A');
} else { // 非字母
printf("*");
}
}
return 0;
}
```
相关问题
c语言实现:输入一个字符串,统计英语字母、数字字符、其它字符的个数。
以下是C语言实现,可以使用`ctype.h`头文件中的函数判断字符类型:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int letter = 0, digit = 0, other = 0;
int i;
printf("请输入一个字符串:");
fgets(str, 100, stdin);
for (i = 0; str[i] != '\0'; i++) {
if (isalpha(str[i])) { // 判断是否为英文字母
letter++;
} else if (isdigit(str[i])) { // 判断是否为数字字符
digit++;
} else { // 其它字符
other++;
}
}
printf("字母个数:%d\n", letter);
printf("数字个数:%d\n", digit);
printf("其它字符个数:%d\n", other);
return 0;
}
```
以上代码中,`fgets()`函数用于从标准输入中获取字符串,`isalpha()`函数判断字符是否为英文字母,`isdigit()`函数判断字符是否为数字字符。
C语言编程题: 输入一个字符串看里面看字母多少,数字多少,特殊符号多少
在C语言中,你可以通过遍历输入的字符串并逐字符分析来解决这个问题。首先,你需要创建三个计数器分别记录字母、数字和特殊符号的数量。这里是一个简单的示例代码:
```c
#include <stdio.h>
#include <ctype.h> // 包含处理字符类型的库
int main() {
char str[100]; // 存储字符串
int alpha_count = 0; // 字母计数器
int num_count = 0; // 数字计数器
int special_count = 0; // 特殊符号计数器
printf("请输入一个字符串: ");
fgets(str, sizeof(str), stdin); // 获取用户输入,包括换行符
// 遍历字符串,忽略空格
for (char *p = str; *p != '\0'; p++) {
if (isalpha(*p)) { // 检查是否为字母
alpha_count++;
} else if (isdigit(*p)) { // 检查是否为数字
num_count++;
} else { // 其他不是字母也不是数字的就是特殊符号
special_count++;
}
}
printf("\n字符串中有:\n"
"字母: %d\n"
"数字: %d\n"
"特殊符号: %d\n",
alpha_count, num_count, special_count);
return 0;
}
```
在这个程序中,`isalpha()` 函数用于检查字符是否为字母,`isdigit()` 则用于检查是否为数字。如果字符既不是字母也不是数字,那么它就被认为是特殊符号。
阅读全文