请编写一个函数fun,函数的功能是:输入一个字符串,过滤此串,只保留串中的字母字符。

请编写一个函数fun,函数的功能是:输入一个字符串,过滤此串,只保留串中的字母字符。

以下是一个简单的C语言函数,用于从一个字符串中过滤出字母字符并将结果存储在另一个字符串中:

#include <stdio.h>
#include <ctype.h>

void filter_letters(char str[], char result[]) {
    int i, j;
    for (i = 0, j = 0; str[i] != '\0'; i++) {
        if (isalpha(str[i])) { // 如果是字母字符
            result[j] = str[i]; // 存储到结果串中
            j++;
        }
    }
    result[j] = '\0'; // 为结果串加上字符串结束符
}

int main() {
    char str[] = "Hello, 123 world!";
    char result[100];
    filter_letters(str, result);
    printf("%s\n", result); // 输出过滤出的字母字符
    return 0;
}

该函数使用ctype.h库中的isalpha函数,判断该字符是否是字母字符,即AZ或az。用两个循环变量,遍历每个字符,并将其存储在结果串中,如果不是字母则不做处理。最后为结果串加上字符串结束符,保证其是一个合法的字符串。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^