私は2つの配列を持っています。配列testAnswerは「試験への回答」を保持し、配列inputAnswersは「試験への学生の回答」を保持します。
正解と不正解を表示しようとしています。言い換えれば、inputAnswers にない testAnswer の値 (不正解) と、両方の配列に共通する値 (正解) を表示しようとしています。
このために、linq を使用して .Except および .Intersect メソッドを使用しました。しかし、私はこの奇妙な出力を得ています:
B, D, A, C
誰でも私を助けてください。
私のコード:
private void button1_Click(object sender, EventArgs e)
{
string[] testAnswer = new string[20] { "B", "D", "A", "A", "C", "A", "B",
"A", "C", "D", "B", "C", "D", "A", "D", "C", "C", "B", "D", "A" };
string a = String.Join(", ", testAnswer);
// Reads text file line by line. Stores in array, each line of the
// file is an element in the array
string[] inputAnswer = System.IO.File
.ReadAllLines(@"C:\Users\Momo\Desktop\UNI\Software tech\test.txt");
string b = String.Join(", ", inputAnswer);
var inter = inputAnswer.Intersect(testAnswer);
foreach (var s in inter)
{
listBox1.Items.Add(s);
}
}