为了账号安全,请及时绑定邮箱和手机立即绑定

总是显示多出来一个人的成绩,请帮我看看代码

 string[] name = new string[] { "吴淞" ,"钱东宇","浮沉","陈璐", "周蕊","林日新" };

             int[] score = new int[] { 60, 56, 90, 89, 13, 56 };

             int max = 0; 

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

             if (score[i]>max)

             {

                 max = score[i];

                 Console.WriteLine("{0}的成绩最高,是{1}", name[i], max);

             }


正在回答

1 回答

你这个代码会把第一个人的名字输进去。因为你的max初始值为0,不管是哪个同学的分数都比这个高,所以第一个同学的名字一定会出来,你把max的初始值设置成score[0]就好了。

1 回复 有任何疑惑可以回复我~
#1

慕丝0026560

不过这样还是会有一个问题,因为如果最高分的不是第一次就出现,就还会再有多出来的人名。最好还是把输出语句放到for循环外面。另外定义一个值来存储数组的索引。
2016-05-08 回复 有任何疑惑可以回复我~
#2

世界我快乐 提问者

非常感谢!
2016-05-24 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

总是显示多出来一个人的成绩,请帮我看看代码

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信