-3

こんにちは、学生を追加した後にリストから学生 ID を検索するための次のコードがあります。初めて取得したときは正常に機能しますが、別の学生を追加してその特定の ID を検索すると、それが見つかりません。誰かが間違いを教えてもらえますか?

public void AddMarks(int id)
{
    for (int i = 0; i < mystudent.Count; i++)
    {
        if (mystudent[i].Id == id)
        {
            foreach (Student st in mystudent)
            {
                 Console.WriteLine("enter Mathematics halfyearly exam");
                 Maths.HYEXAM = Int16.Parse(Console.ReadLine());
                 Console.WriteLine("enter Mathematics annualyear exam");
                 Maths.ANEXAM = Int16.Parse(Console.ReadLine());
            }
        }
    }
}
4

1 に答える 1

1

あなたのループをよく見てください。学生に対して何もしていません...代わりに、次のような変数を設定しています:

Maths.HYEXAM = Int16.Parse(Console.ReadLine());

確かに、静的変数を設定しているように見えます。あなたは?もしそうなら、戻って「静的」の意味を修正する必要があります。興味のある特定の学生にマークがどのように関連付けられるかを考えてみましょう。

次に、ループが2 つある理由を突き止めます。なぜループを使用してすべての生徒を反復処理しているのforですか。一致するものが見つかった場合は、ループを使用してすべての生徒を反復処理していforeachます...

于 2012-12-10T18:04:40.757 に答える