用c语言编写一个程序,功能是:输入一个人字符串,过滤此串,只保留串中的字母字符
时间: 2023-05-31 17:07:36 浏览: 228
好的,请输入要过滤的字符串:
(等待用户输入)
以下是对应的C语言代码实现:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int i, j;
printf("请输入要过滤的字符串:\n");
scanf("%[^\n]", str);
i = 0;
j = 0;
while (str[i]) {
if (isalpha(str[i])) {
str[j] = str[i];
j++;
}
i++;
}
str[j] = 0;
printf("过滤后的字符串为:%s\n", str);
return 0;
}
```
这个程序可以过滤输入的字符串,只保留其中的字母字符。步骤是先读取用户输入的字符串,遍历字符串的每一个字符,检查是否为字母字符,若是则将其保留在新字符串中。最后输出过滤后的字符串。
相关问题
请使用C语言编写一个函数fun,函数的功能是:输入一个字符串,过滤此串,只保留串中的字母字符。
好的,以下是使用C语言编写的函数fun的代码:
```c
#include <stdio.h>
#include <ctype.h> // 头文件中包含了isalpha函数
void fun(char *str) {
int i, j;
for (i = 0, j = 0; str[i]; i++) {
if (isalpha(str[i])) { // 判断是否是字母字符
str[j++] = str[i];
}
}
str[j] = '\0'; // 字符串末尾添加空字符
}
int main() {
char str[100];
printf("请输入一个字符串:");
fgets(str, 100, stdin); // 从标准输入读取字符串
fun(str); // 调用函数fun
printf("过滤后的字符串为:%s\n", str);
return 0;
}
```
使用示例:
输入:Hello, world!
输出:过滤后的字符串为:Helloworld
编写程序,输入一个字符串,过滤掉所有非小写字母,得到由小写字母组成的字符串并输出。用C语言
好的,以下是C语言的代码实现:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char s[100];
printf("请输入一个字符串:");
scanf("%s", s);
// 过滤非小写字母
char filtered[100];
int j = 0;
for (int i = 0; s[i] != '\0'; i++) {
if (islower(s[i])) {
filtered[j++] = s[i];
}
}
filtered[j] = '\0';
printf("过滤后的字符串为:%s\n", filtered);
return 0;
}
```
这段代码首先定义了一个字符数组 `s`,用于存储用户输入的字符串。然后使用 `scanf` 函数从标准输入中读取用户输入的字符串。
接下来,我们定义了另一个字符数组 `filtered`,用于存储过滤后的字符串。我们使用一个循环遍历输入字符串中的每个字符,如果该字符是小写字母,则将其加入 `filtered` 中。
最后,我们在 `filtered` 的末尾添加一个空字符 `\0`,以表示字符串的结尾,并使用 `printf` 函数输出过滤后的字符串。
注意,这段代码中使用了 `<ctype.h>` 头文件中的 `islower` 函数,用于判断一个字符是否为小写字母。
阅读全文