用c语言编程,对输入的一行字符进行统计分析,要求统计并输出出现的数字字符及其个数(用冒号分隔)

如题所述

C代码和运行结果如图:

输出符合样例,望采纳~

附源码:

#include <stdio.h>

int main() {

    char s[100]; // 输入不超过100字符

    int i = 0, cnt[10] = {0}; // 0-9每个数字字符个数统计

    fgets(s, 100, stdin); // 读入一行字符,包括换行符'\n'

    while (s[i] != '\n') { // 遇到换行即到结尾,改成空字符'\0'也可以

        if (s[i] >= '0' && s[i] <= '9') // 数字字符

            cnt[s[i] - '0']++; // 统计对应字符个数

        i++;

    }

    for (i = 0; i < 10; i++) { // 输出出现的数字字符个数

        if (cnt[i] > 0)

            printf("%d: %d\n", i, cnt[i]);

    }

    return 0;

}

温馨提示:答案为网友推荐,仅供参考
相似回答