我试图编写一个程序,它通过数字记录并找出哪一个最高,代码当前位于下方。我的问题是,它似乎只列出了记录中的最后一个分数(而不是最高分)。任何帮助是极大的赞赏。从记录中找到最高值
Procedure FindTopScore(Var TopScores : TTopScores);
Var
Count : Integer;
Highest : Integer;
Name: String;
Begin
For Count := 1 to MaxSize Do
If TopScores[Count].Score > Highest Then
Highest := TopScores[Count].Score;
Name := TopScores[Count].Name;
Writeln('Higest score is by ' ,TopScores[Count].Name, ' of ', TopScores[Count].Score);
End;
我啊看到感谢。还修复了名称问题。感谢您指出了这一点。 也说如果两个人有相同的最高分,无论如何输出他们两个呢? – orange 2011-05-25 18:04:13
@Jeff你可以如果您的循环中的TopScores [Count] .Score = Highest'在变量Name中追加新名称,并且如果真的更大,则将其替换。 – Howard 2011-05-25 18:23:45
我很困惑,可能让你向我展示代码?我让它=最高,但输出只是随机的ASCII字符。 – orange 2011-05-25 18:56:15