using System;
using System.Collections.Generic;
using System.Text;
namespace projGetMaxScore
{
class Program
{
static void Main(string[] args)
{
string[,] hasK=new string [8,2]{"吴松",89},{"钱东宇",90},{"伏晨",98},{"陈陆",56},{"周蕊",60},{"林日鹏",91},{"何坤",93},{"关欣",85};
string name=" ";
string score=0;
for(int i=0;i<8;i++)
{
if(String.Compare(hasK[i,1],score)>0)
{
name=hasK[i,0];
score=hasK[i,1];
}
}
Console.WriteLine("分数最高的是"+name+",分数是"+sorce);
}
}
}
第一,第一行代码 是声明了一个string类型的二维数组,那么里面就只能放string类型的,所以对于里面的分数 也要用双引号“”引上。
第二,二维数组的格式不对,少了一个大括号 ,声明格式大致为 string[,] s=new string[,]{{},{},{},{}};
第三,
string score=0;
既然声明了字符类型,就要用双引号引上。
第四,变量名字上下文不一致:上面声明的是score ,结果下面 输出时写的是sorce。
第五,name和score 的初始化赋值时,建议赋值 下标为0的值。
上代码:
string[,] hasK=new string [8,2]{{"吴松","89"},{"钱东宇","90"},{"伏晨","98"},{"陈陆","56"},{"周蕊","60"},{"林日鹏","91"},{"何坤","93"},{"关欣","85"}}; string name = hasK[0,0]; string score=hasK[0,1]; for(int i=0;i<8;i++) { int a = String.Compare(hasK[i, 1], score); if(String.Compare(hasK[i,1],score)>0) { name=hasK[i,0]; score=hasK[i,1]; } } Console.WriteLine("分数最高的是" + name + ",分数是" + score);
祝你学习顺利。如果问题解决了,记得采纳下答案哦!
"分数是"前面的逗号是中文的