用c#编写控制台程序,输入一行字符,检索是否存在重复的连续字符,输出重复的最大次数,及其相应字符,并输出过滤后的字符串,运行结果如下图所示。

img

    static void Main(string[] args)
    {
        Console.WriteLine("请输入一行字符:");
        string str = Console.ReadLine();
        if (str.Length <= 1)
        {
            Console.WriteLine($"过滤后的结果如下:{str}");
            Console.WriteLine($"重复字数最多的字符为“{str.FirstOrDefault()}”,其重复{str.Length}次。");
        }
        string newStr = ""+str[0];
        int left = 0;
        char leftChar = str[0];
        int max = 0;
        char maxChar = str[0];
        for(int right = 1; right< str.Length; right++)
        {
            var nowChar = str[right];
            if (nowChar.Equals(leftChar))
            {
                if(max< right- left)
                {
                    max = right - left;
                    maxChar = nowChar;
                }
            }
            else
            {//左边坐标移动
                left= right;
                leftChar = nowChar;
                newStr += nowChar;
            }
        }
        Console.WriteLine($"过滤后的结果如下:{newStr}");
        Console.WriteLine($"重复字数最多的字符为“{maxChar}”,其重复{max + 1}次。");
    }

测试结果:

img