问答详情
源自:6-1 练习题目

这样改哪里错了

using System;
using System.Collections.Generic;
using System.Text;

namespace projGetMaxScore
{
    class Program
    {
        static void Main(string[] args)
        {
            string[,] info = new string[8, 2] { { "吴松", "89" }, { "钱东宇", "90" }, { "伏晨", "98" }, { "陈陆", "56" }, { "周蕊", "60" }, { "林日鹏", "9" }, { "何昆", "93" }, { "关欣", "85" } };
            string name="",score="0";
            string text="0";
            for(int i=0;i<8;i++)
            {
                if(info[i,1]>text)
                {
                    text = info[i,1];
                    name = info[i,0];
                }
            }
            Console.WriteLine("分数最高的是"+name+",分数是"+text);
        }
    }
}

提问者:qq_乱洒清荷_03717334 2018-03-03 16:54

个回答

  • 来自江西的大熊
    2018-03-06 20:26:28
    已采纳

               //先判断这个数组必须大于0,确保这个数组有长度

               if (score.Length > 0) {

                   int index = 0;//然后初始化下标index

                   int maxScore = score[0];//这句代码把数字第一位当做是最高分


                   for (int i = 0; i < score.Length; i++) {//根据数组的长度进行循环


                       if (score[i] > maxScore) {//然后用这个假设的最高分和数组每个数进行比大小,如果假设的最高分遇到更高的


                           maxScore = score[i];//就把这个更高的分数赋值给maxScore,让maxScore成为真正的最高分


                           index = i;//此时score[i]中的这个i也就是最高分的下标啦

                       }

                   }

                   Console.Write("分数最高的是"+name[index]+",分数是"+ maxScore);

               }

    纯手打,每一步都有解释

  • qq_哦_95
    2018-03-03 19:26:04

    你定义的二维数组是string类型的,所以分数也是string类型的,所以你的分数比较错了。