统计字符串中每个字符出现的次数

国际 2019-02-13 22:46:54 275

本文收集整理关于统计字符串中每个字符出现的次数的相关议题,使用内容导航快速到达。

内容导航:

  • Q1:c语言统计字符串中每个字符出现的次数
  • Q2:java如何统计字符串中每个字符出现的次数
  • Q3:java中怎么统计一个字符串中每个字符的出现次数?
  • Q4:C语言编程:输入一字符串,统计字符串中各个字符出现的频率?
  • Q1:c语言统计字符串中每个字符出现的次数

    一、算法分析:

    要统计每个字符出现的个数,那么就要为每个字符做一个统计值,可以用数组实现。

    然后输入字符串。

    遍历字符串,对每个字符进行统计。

    输出结果。

    二、参考代码:

    #include
    intmain()
    {
    intcnt[128]={0};//用来统计个数。
    charstr[200];//存储字符串。
    inti;
    gets(str);//输入字符串。
    for(i=0;str[i]!=\0;++i)//遍历字符串。
    cnt[str[i]]++;//统计个数。
    for(i=0;i<128;i++)//遍历统计到的值。
    if(cnt[i]!=0)//如果出现过则打印值,及个数。
    printf("%c:%d\n",i,cnt[i]);//输出结果。
    return0;
    }

    Q2:java如何统计字符串中每个字符出现的次数

    正确答案:
    import java.util.Iterator;
    import java.util.Map;
    import java.util.TreeMap;
    public class Test {
    @SuppressWarnings("unchecked")
    public static void main(String[] args) {
    String str = null;
    try {
    str = args[0];
    } catch (ArrayIndexOutOfBoundsException e) {
    System.out.println("请输入参数!");
    System.exit(0);
    }
    Map tree = new TreeMap();
    for (int i = 0; i < str.length(); i++) {
    char ch = str.charAt(i);
    if ((ch >= a && ch <= z)(ch >= A && ch <= Z)) {
    if (!tree.containsKey(ch)) {
    tree.put(ch, new Integer(1));
    } else {
    Integer in = (Integer) tree.get(ch) + 1;
    tree.put(ch, in);
    }
    }
    }
    Iterator tit = tree.keySet().iterator();
    while (tit.hasNext()) {
    Object temp = tit.next();
    System.out.print(temp.toString() + "(" + tree.get(temp) + ")");
    }
    }
    }

    Q3:java中怎么统计一个字符串中每个字符的出现次数?

    操作如下:

    String str ="2342asfghgyu56asdasda";Map maps = new HashMap();for(int i=0;i

    String key = String.valueOf((str.charAt(i)));if(!maps.containsKey(key)),maps.put(key, 1);else{int val =maps.get(key);maps.put(key, val+1);

    for(Map.Entry i : maps.entrySet()){System.out.println(i.getKey()+ "=="+i.getValue());

    具体方法:

    package com.haotj.demo13;import java.util.Map;import java.util.Set;importjava.util.TreeMap;public class Test,public static void main(String[] args),String str。

    "asdlkfjlaksdlkjfdsjlkazxcsdklfwuertiopwrljlflsdalxvclzjlksdfljklsdfuiafjdgllfdgdaslfsdjkldskfjdsl"; Map map = countChar(str);。

    //遍历//1-Set set = map.keySet();for(Character key : set)System.out.println(key + "=" + map.get(key));//2-//Map中无迭代器,不能如下使用// for(Map.Entry me : map)// {// }Set> entrys = map.entrySet();。

    for(Map.Entry me : entrys)System.out.println("===" + me.getKey() + "=" + me.getValue()/*** 统计一个字符串中,每个字符出现的次数。

    * <功能详细描述>* @param str:被统计的字符串,* @return 记录了每个字符及对应该字符出现的次数,* @see [类、类#方法、类#成员]*/public static Map countChar(String str)

    //用于存放字符及对应次数。TreeMap tm = new TreeMap();//得到字符串中的每个字符for(int i = 0; i < str.length(); //取得字符串中每个字符,Character ch = str.charAt(i);

    //在tm 对象中,判断该字符是否存在,//如果存在,则取得该key 对应的value 值,将value 值加1,再存入该集合对象,//如果不存在,则将该字符及1,存入到tm 中if(!tm.containsKey(ch)),else。

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

    //统计一个文件里各个字符出现的次数,转换频率自己再加几句就是了,这里只统计了26个字母,如果还有更多的字符的话,将数组再扩大就行了,应该比较简单,我就不写了
    #include
    #include
    void stat(char *file,int *statistic)
    {
    int i=0;
    while(file[i++]!=0)
    statistic[file[i-1]-97]++;
    }
    int main()
    {
    char file[100]={0};
    int statistic[26]={0};
    int i=0,j;
    double s=0;
    FILE *fp;
    if((fp=fopen("1.txt","r"))==NULL)
    {
    printf("cant open 1.txt");
    return 1;
    }
    while(!feof(fp))
    fread(&file[i++],1,1,fp);
    fclose(fp);
    j=i;
    stat(file,statistic);
    for(i=0;i<26;i++)
    printf("%c:%d\n",97+i,statistic[i]);
    return 0;
    }
    //在源程序目录下建立一个文本文件1.TXT,里面输入字符串,就可以进行统计了

    相关文章
    excel统计人数 有重复2019-01-16
    统计不重复个数的函数2019-02-01
    excel怎么统计优秀人数2019-02-02
    excel统计一列不同数据的个数2019-02-15
    excel 数据统计分析2019-02-19
    excel表格中如何统计重复数据2019-02-19
    微型word怎么统计字数2019-02-19
    excel常用的统计函数2019-02-20
    excel对数据进行汇总统计2019-02-20
    excel统计各分数段人数的函数2019-02-23