zoukankan      html  css  js  c++  java
  • C语言 统计不同字符出现的频度

    编写一个程序,输入一个字符串,统计其中各个不同的字符出现的频度

    例如:

    直接上代码:

    #include<stdio.h>
    #include<string.h>
    int main(){
        char a[50];//定义一个字符数组
        gets(a);
        int num[40]={0};//定义一个显示频度的数组
        
        int j=0;//j在频度数组当中遍历
        for(int i=0;i<=strlen(a);i++)//i在a中遍历
            if(a[i]>='a'&&a[i]<='z')//首先判断数组a中的字符是不是字母
            {
                for(int k=i+1;a[k]!='';k++)//符合字母条件就到这个字母的后面去寻找有没有相同的字母
                    if(a[i]==a[k])//如果出现了相同的字母,就用空格替换重复的字母,后面输出的时候直接忽略空格
                    {
                        a[k]=' ';//替换
                        ++num[j];//每找到一个相同的字母,其对应的频度自增1;
                    }
                ++j;//当一个字母的相同项找完以后,则跳到下一个,统计下一个字母的频度
            }
        
        for(int i=0;i<=strlen(a);i++)//不打印字符串中的空格
            if(a[i]>='a'&&a[i]<='z')
                printf("%3c",a[i]);
        printf("
    ");
        for(int i=0;i<j;i++)
            printf("%3d",num[i]+1);
        printf("
    ");
    }
  • 相关阅读:
    Objective
    Objective
    安排
    ios 类的内部结构
    什么是静态语言,什么是动态语言?
    ios 中的 GCD
    IOS 中的JS
    菱形开合的实现 IOS
    典题
    c++连接数据库 在vc6.0
  • 原文地址:https://www.cnblogs.com/oldfish123/p/13571929.html
Copyright © 2011-2022 走看看