输入字符串,如何统计其中字母,数字,下划线,空格的数量

题目描述

C语言程序,输入字符串,如何统计其中字母,数字,下划线,空格的数量

案例代码

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

int main() {
    char str[1000];
    int letters = 0, digits = 0, underscores = 0, spaces = 0;
    int i = 0;

    printf("请输入字符串: ");
    fgets(str, sizeof(str), stdin);

    while (str[i] != '\0') {
        if (isalpha(str[i])) {
            letters++;
        }
        else if (isdigit(str[i])) {
            digits++;
        }
        else if (str[i] == '_') {
            underscores++;
        }
        else if (str[i] == ' ') {
            spaces++;
        }
        i++;
    }

    printf("字母数量: %d\n", letters);
    printf("数字数量: %d\n", digits);
    printf("下划线数量: %d\n", underscores);
    printf("空格数量: %d\n", spaces);

    return 0;
}

该程序首先定义了一个字符数组 str 来存储用户输入的字符串,然后使用 fgets 函数读取用户输入的字符串。接下来,通过循环遍历字符串中的每个字符,并使用 isalpha 函数判断是否为字母,isdigit 函数判断是否为数字,以及判断是否为下划线和空格,从而进行相应的计数。最后,输出统计结果。

请注意,该程序假设用户输入的字符串长度不超过 1000 个字符。如果需要处理更长的字符串,可以相应地调整字符数组的大小。

© 版权声明
THE END
喜欢就支持一下吧
点赞8赞赏 分享