作业一:最大篮球单词个数

95 阅读1分钟
namespace basketball
{
    internal class Class1
    {
        public static void Main(String[] args)
        {
            Console.WriteLine("请输入一串字符串:");
            string text = Console.ReadLine();//输入一串字符串
            char[] text_array = new char[text.Length];//定义一个字符数组
            text_array = text.ToCharArray();//将字符串转化字符数组
                                            // Console.WriteLine(text_array[0]);
            char[] char_array = { 'b', 'a', 's', 'k', 'e', 't', 'l' };//目标数组
            int[] count_array = new int[7];//创建一个长度为7的计数数组,记录字符个数
            
            for (int i = 0; i < text_array.Length; i++)//遍历字符数组
            {
                for (int j = 0; j < char_array.Length; j++)//遍历目标数组
                {


                    if (text_array[i] == char_array[j])//匹配字母,并记录
                    {
                        if (text_array[i] == 'b')
                        {
                            count_array[0]++;//记录b的个数

                        }
                        if (text_array[i] == 'a')
                        {
                            count_array[1]++;//记录a的个数

                        }
                        if (text_array[i] == 's')
                        {
                            count_array[2]++;//记录s的个数

                        }
                        if (text_array[i] == 'k')
                        {
                            count_array[3]++;//记录k的个数

                        }
                        if (text_array[i] == 'e')
                        {
                            count_array[4]++;//记录e的个数

                        }
                        if (text_array[i] == 't')
                        {
                            count_array[5]++;//记录t的个数

                        }
                        if (text_array[i] == 'l')
                        {
                            count_array[6]++;//记录l的个数

                        }

                    }
                }

            }
          
            //b,a,l在basketball含两个字母,所以除以二即可
            count_array[0] = count_array[0] / 2;//b
            count_array[1]=count_array[1] / 2;//a
            count_array[6] = count_array[6] / 2;//l
           
            
            //排序,从小到大
            Array.Sort(count_array);
            
            
            //输出最小的字母数量,即为最大basketball的单词数
            Console.WriteLine("最大篮球单词数:{0}",count_array[0]);
        }
        
    }

    }
``