String 把一切都算进去

String 把一切都算进去,string,char,String,Char,我很抱歉,如果这个问题已经在其他线程中被问到,但我就是找不到我的答案。我仍然是编程新手,所以请考虑我: 我需要创建一个应用程序,让用户输入一个字符串并显示字符串中出现频率最高的字符。 1使用循环选择字符串的每个字符 2在上面的循环中,创建一个循环,将当前字符与a-z数组中的每个字符进行比较 3如果字符匹配,则使用索引增加整数数组中的当前位置。 4当上述循环完成后,循环整数数组以查找字符的最大计数 字符串=HELLLLOO 显示=L 任何帮助都将不胜感激:当然,还有更有效或更简单的方法。我只是通过

我很抱歉,如果这个问题已经在其他线程中被问到,但我就是找不到我的答案。我仍然是编程新手,所以请考虑我:

我需要创建一个应用程序,让用户输入一个字符串并显示字符串中出现频率最高的字符。 1使用循环选择字符串的每个字符 2在上面的循环中,创建一个循环,将当前字符与a-z数组中的每个字符进行比较 3如果字符匹配,则使用索引增加整数数组中的当前位置。 4当上述循环完成后,循环整数数组以查找字符的最大计数

字符串=HELLLLOO 显示=L


任何帮助都将不胜感激:

当然,还有更有效或更简单的方法。我只是通过C编写了一个简单的解决方案,没有经过测试

    string word = "HELLLOO";

    Dictionary<char, int> words = new Dictionary<char, int>();

    for(int i=0;i<word.length;i++)
    {
       if(words.ContainsKey(word[i]))
       {
          words[word[i]] = words[word[i]] + 1;
       }
       else
          words.Add(word[i],1);
    }
    char maxWord;
    int maxVal = 0;
    foreach (var item in words)
    {
      if (item.Value > maxVal)
      {
        maxVal = item.Value;
        maxWord = item.Key;
      }
    }

您可以将maxWord显示为一个单词中使用最多的字符。

您使用的是什么语言?这听起来像是家庭作业。你的老师想要伪代码吗?到目前为止,你在课堂上讲了些什么?考虑一下最近的材料,关于如何做的提示。你能发表你目前所尝试的吗?我很抱歉,如果我的问题还不清楚。我用的是C,但这不是作业。这只是一个每周的练习,编号的说明是他的练习技巧。我已经尝试过了,但还没有真正理解。我已经理解了代码的第一部分。首先,循环字符串的第一个字符,在其中另一个循环将该字符与a-z数组中的第一个字符进行比较。让我困惑的是如何对a-z数组中的每个字母进行计数?和上面提到的一样,如何使用索引增加整数数组和字符串中的当前位置?谢谢Gokhan!这很有帮助。虽然有一些词我不感兴趣。喜欢字典里的单词吗?在这一部分中,您要声明一个数组,对吗?而且我在我们班上还没有遇到ContainsKey这个词。顺便说一下,我们使用的是Microsoft visual studio 2010。正如我所写的,我使用的是C语言,我不知道您使用的语言。如果您使用.NET framework,它会起作用,您可以轻松地将其转换为visual basic或任何其他属于.NET framework或C/C++的语言,您可以通过做一些小的更改来获得相同的结果,而字典就像关联数组,它已经在框架中实现了。伙计,您刚刚救了我的命