求解???

来源:6-1 练习题目

慕函数7131464

2022-10-29 23:04

 int[] num = new int[]{89,90,98,56,60,91,93,85};

            string[] xingming = new string[]{ "吴松", "钱东宇", "伏晨", "陈陆", "周蕊", "林日鹏", "何昆", "关欣" };

            int max = num[0];

            string name = xingming[0];

            for (int i = 0; i < num.Length; i++)

            {

                if (num[i] > max) { 

                    max = num[i]; 

                    name = xingming[i];

               break;//这里加个break就不对了?为啥

                }

            }

            Console.Write("分数最高的是{0},分数是{1}", name, max);


写回答 关注

2回答

  • 不言经年_aenBOP
    2024-11-15 09:53:43

    if执行完就完了,break要在for循环里面

  • padgettxpj
    2022-11-15 23:56:01

    你可以设置一下断点再调试,看看每一步每个变量的数值。然后看看从哪里中止了程序。

    这里你首先让max 赋第一个分数数组的值89分。

    然后进入循环i从0开始,然后进入判断 num[0]的值89 是不是大于 max的值89,发现不是就不执行里面的语句。继续下一步循环。这时候i=1,然后判断num[1]的值90 是不是大于 max的值 89,发现是,就执行里面的语句。让max = num[1] = 90; 然后姓名 name = xingming[1]; 也就是钱东宇。之后就执行break的语句了。而break就是中止整个循环(注意这里不是中止if语句,if不需要用到break的)。那么后面就不再执行循环,就没有遍历整个数组了哦。

    最后就是输出分数最高的是谁,分数是多少了。

C#开发轻松入门

本门课程是C#语言的入门教程,将带你轻松入门.NET开发

254119 学习 · 1459 问题

查看课程

相似问题

跪求解求解

回答 1

求解???

回答 5

求解???

回答 2

求解!!?

回答 5

求解!??

回答 2