jQuery火箭图标返回顶部代码 - 站长素材

C# 第二次练习 方法

1.方法名称:独立完成功能的一个多个单词缩写,能见名知意即可,比如求单词平均长度:AverageWordLength
2.方法参数:独立完成事情的条件,求单词平均长度,那么条件就是需要给单词,即:string str
3.返回值:做事情的结果:求平均长度,平均长度应该是小数,所以返回值类型为double
4.有返回值的方法,在书写时,首先在方法中声明一个和返回值类型一样的变量并赋初值,如:double avgLength = 0,然后返回这个变量:return avgLength,然后功能实现写在这两句代码中间

1.统计一段英文短文中单词的平均长度

 
            string file = textBox1.Text;
            double avg = AverageWordLength(file);
            textBox2.Text = "单词的平均长度" + avg;
           
        //统计一段英文短文中单词的平均长度,单词之间由若干个空格隔开。
        public double AverageWordLength(string str)
        {
            double avgLength = 0;
            string[] words = str.Split(' ');
            double sum = 0;
            for (int i = 0; i < words.Length; i++)
            {
                sum += words[i].Length;
            }
            avgLength = sum / words.Length;
            return avgLength;
        }

2.判断一个数是否能被3整除但不能被7整除


            textBox1.Text = "1-100之间能被3整除但不能被7整除的数有:";
            for (int i = 100; i <= 200; i++)
            {
                if (IsDivide(i))
                {
                    textBox2.Text += i + ",";
                }
            }


            //判断一个数是否能被3整除但不能被7整除
            bool IsDivide(int num)
            {
                bool flag = false;
                if (num % 3 == 0 && num % 7 != 0)
                {
                    flag = true;
                }
                return flag;
            }

3.输入一个字符串,统计字符串中英文字母和数字字符的个数并输出

        Word(textBox1.Text);

        //3.输入一个字符串,统计字符串中英文字母和数字字符的个数并输出。要求编写应用程序,来检验方法的正确性。
        public void Word(string str)
        {
            int zimu = 0;
            int shuzi = 0;
            int qita = 0;
            foreach (char s in str)
            {
                if ((s >= 'a' && s <= 'z') || (s >= 'A' && s <= 'Z'))
                {
                    zimu++;
                }
                else if (s >= '0' && s <= '9')
                {
                    shuzi++;
                }
                else
                {
                    qita++;
                }
            }
            textBox2.Text = "英文字符个数:" + zimu + "数字字符个数:" + zimu + "其他字符个数:" + qita;
            
        }

4.对正整数m求和,其中求和公式为s= 1/2+1/3+…+1/m,方法返回s的值。

        textBox2.Text = "求和为:"+Sum(int.Parse(textBox1.Text));


       //4.对正整数m求和,其中求和公式为s= 1/2+1/3+…+1/m,方法返回s的值。        
        public double Sum(int m)
        {
            double s = 0;
            for (int i = 1; i <= m; i++)
            {
                s += 1.0 / i;
            }
            return s;
        }

5.将一个字符串中所有英文字符后加一个$字符,并返回处理后的字符串。

        textBox2.Text = "处理后的字符串:" +AddDollar(textBox1.Text);
        
        //5.写一个方法,将一个字符串中所有英文字符后加一个$字符,并返回处理后的字符串。
        //例如输入:A1B23CD45,则方法返回值为:A$1B$23C$D$45,要求编写应用程序,来检验方法的正确性。
        public string AddDollar(string str)
        {
            string result = "";
            foreach (char s in str)
            {
                if ((s >= 'a' && s <= 'z') || (s >= 'A' && s <= 'Z'))
                {
                    result += s + "$";
                }
                else
                {
                    result += s;
                }
            }
            return result;
        }

6.求s=1/a+1/aa+1/aaa+1/aaaa+1/aaaaa的值

        textBox2.Text = "计算后:" +Sum1(int.Parse(textBox1.Text));

        //6.写一个方法,求s=1/a+1/aa+1/aaa+1/aaaa+1/aaaaa的值,其中a是用户定义的数字。
        //例如1/2+1/22+1/222+1/2222+1/22222(此时共有5个数相加),返回值为和s。
        public double Sum1(int a)
        {
            double s = 0;
            for (int i = 1; i <= a; i++)
            {
                s += 1.0 / (a*xunhuan(i));
            }
            return s;
        }

        public int xunhuan(int n)
        {
            int a = 0;
            string s = 0.ToString();
            for (int i = 1; i <= n; i++)
            {
                s += 1;
            }
            a=int.Parse(s);
            return a;

        }

7.判断一个数是否是完数,返回值为布尔类型。一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3。

        textBox2.Text = "是否是完数:" + IsPerfect(int.Parse(textBox1.Text));

        //7.判断一个数是否是完数,返回值为布尔类型。一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3。
        bool IsPerfect(int num)
        {
            int sum = 0;
            for (int i = 1; i <= num / 2; i++)
            {
                if (num % i == 0)
                {
                    sum += i;
                }
            }
            if (sum == num)
                return true;
            else
                return false;
        }

8.求分数序列:2/1,1/3,3/4,4/7,7/11,11/18...的前10项之和,并返回。

        textBox2.Text = "前10项之和:" + Sum2();

        //8.写一个方法,求分数序列:2/1,1/3,3/4,4/7,7/11,11/18...的前10项之和,并返回。
        public double Sum2()
        {
            double sum = 0;
            double a = 1;
            double b = 2;
            double temp = 0;
            for (int i = 0; i < 10; i++)
            {
                sum += a / b;
                temp = b;
                b = a + b;
                a = temp;
            }
            return sum;
        }   

9.求1+1/2!+1/3!+...+1/n!的和,并将和作为返回值返回

        textBox2.Text = "1+1/2!+1/3!+...+1/n!的和:" + Sum3(int.Parse(textBox1.Text));

        //9.求1+1/2!+1/3!+...+1/n!的和,并将和作为返回值返回
        public double Sum3(int n)
        {
            double sum = 0;
            for (int i = 1; i <= n; i++)
            {
                sum += 1.0 / Factorial(i);
            }
            return sum;
        }  
        public int Factorial(int n)
        {
            int result = 1;
            for (int i = 1; i <= n; i++)
            {
                result *= i;
            }
            return result; 
        }

10.在大奖赛中,有10个评委为参赛的选手打分,分数为1~100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均

        //编写一个方法,输入10个选手的分数,返回最后得分。
        string str = textBox1.Text;
        int[] s =str.Split(',').Select(int.Parse).ToArray();
        double avg = LastScore(s);
        textBox2.Text = "最后得分:" + avg;

        //10.在大奖赛中,有10个评委为参赛的选手打分,分数为1~100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均
        //编写一个方法,输入10个选手的分数,返回最后得分。
        public double LastScore(int[] scores)
        {

            Array.Sort(scores);
            int max = scores[9];
            int min = scores[0];
            int sum = 0;
            for (int i = 1; i < 9; i++)
            {
                sum += scores[i];
            }
            double avg = (double)sum / 8;
            return avg;
        }

引用
*** 分割线 ---
删除线

posted @ 2024-12-10 11:51  时移之人  阅读(33)  评论(0)    收藏  举报
Live2D