回 帖 发 新 帖 刷新版面

主题:[讨论]读取字符并排序问题的深入

小弟有个题目是这样的,看似简单,实际上着实让人费解。请各位大虾指点一二。
      有一个名为Input.txt的文件,
      其中包含了许多字符,
      要求统计每一个字符的个数,
      并且按照字符个数的多少排序。最终结果输出到Result.txt文件中
  Input.txt中可能包含各种标点符号,但不含中文字符。
  Result.txt按照字符个数由多到少的顺序排列(均为小写字母)。格式如下:
         字符:个数
           e:7
           f:5
           w:4
           m:9

回复列表 (共1个回复)

沙发

这样的题目很常见,简化后就是用比较好的方法计算字符串中各个字母出现的次数。
比如字符串 const char *str = "lajhpjpiouyoancmakg"各个字符出现次数
可以这样做吧
int char_num[26] = { 0 };
int loc;
for( i = 0; i < strlen(str); ++i )
{
   loc = str[i] - 'a';
   ++ char_num[loc];
}

我来回复

您尚未登录,请登录后再回复。点此登录或注册