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

好像哪里不对(已解决)

已经自己更改好了,嘿嘿。http://img.mukewang.com/57106d8400011d7901000100.jpg

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

namespace projGetMaxScore
{
    class Program
    {
        static void Main(string[] args)
        {
            //声明string数组。
            string[,] S = new string[8, 2] { { "吴松", "89" }, { "钱东宇", "90" }, { "伏晨", "98" }, { "陈陆", "56" }, { "周蕊", "60" }, { "林日鹏", "91" }, { "何昆", "93" }, { "关欣", "85" } };
            //声明缓存数组。
            string[] C = new string[2];
            //for循环.
            for (int i = 0; i < S.GetLongLength(0); i++)
            {
                //缓存数组与string数组元素转换为int型.
                int a = Convert.ToInt32(C[1]);
                int b = Convert.ToInt32(S[i,1]);
                //与缓存数组循环比较大小.
                if (a < b)
                {
                    //最大值赋值给缓存数组。
                    C[0] = S[i, 0];
                    //赋值前转换回string.
                    C[1] = Convert.ToString(a);
                    S[i, 1] = Convert.ToString(b);
                    C[1] = S[i, 1];
                }
                else
                    continue;
            }
                //输出
                   Console.Write("分数最高的是" + C[0] +","+ "分数是" + C[1]);
        }
    }
}



我写得好像有点太冗余了。


提问者:AchingImpact 2016-04-15 11:48

个回答

  • 名字都被占用完了
    2016-04-25 11:23:27
    已采纳

    using System;


    namespace ConsoleApplication2

    {

        class Program

        {

            static void Main(string[] args)

            {

                string[] names = new string[8] { "吴松","钱东宇", "伏晨", "陈陆", "周蕊","林日鹏", "何昆",  "关欣" };//声明names数组

                int[] score = new int[8] { 89, 90, 98, 56, 60, 91, 93, 85 };//声明score数组

                int max = 0;//声明最高分,默认值为0

                int j = 0 ;//声明j,j是表示最高分的索引

                //用循环求出最高分max

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

                {

                    if(max<score[i])

                    {

                        max=score[i];

                        j=i;//将最高分的索引赋值给j

                    }}

                Console.Write("分数最高的是"+names[j]+",分数是"+max);

                }}}

        用分两组的方法比较简单 而且更加明了