C语言编程:输入一字符串,统计字符串中各个字符出现的频率?

C语言编程:输入一字符串,统计字符串中各个字符出现的频率?,第1张

可以先排序,在遍历统计。

#include <stdio.h>

#include <string.h>

// 升序字符串src,然后返回

char* sort(char *src)

{

    char tem, len = strlen(src)

    for (int i = 0 src[i] i++)

    {

        for (int j = 0 j < len - i - 1 j++)

            if (src[j] > src[j+1])

            {

                tem = src[j]

                src[j] = src[j+1]

                src[j+1] = tem

          兄带  }

    }

    return src

}

int main()

{

    char str[1000], ch

    int i = 0, cnt

    printf("input a string :")

   孝乱 gets(str)

    sort(str)  // 排序

    ch = str[0]

    cnt = 1

    for (i = 1 str[i] i++) // 遍历统计

    {

        if (str[i] != ch)

    巧尘档    {

            if (cnt)

                printf("%c has %d.\n", ch, cnt)

            ch = str[i]

            cnt = 1

        }

        else

            cnt++

    }

    if (cnt)

        printf("%c has %d.\n", ch, cnt)

    return 0

}

//输扰灶入一行字符,分别统计出其中字母、空格、数字和其拿凳他字符的个数。

#include<stdio.h>

int main(void)

{

    char ch

int a=0,b=0,c=0,d=0

while((ch=getchar())!='\n'消李旅)

{

if(ch>='A'&&ch<='Z'||ch>='a'&&ch<='z')

a++

else if(ch>='0'&&ch<='9')

b++

else if(ch==' ')

c++

else 

d++

}

printf("字母=%d\n数字=%d\n空格=%d\n其他字符=%d\n",a,b,c,d)

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12435058.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存