C# C数据比较

C# C数据比较,c#,arrays,C#,Arrays,我的任务是从两个文本文件中读取数据,将数据存储在两个单独的数组中,读取匹配的行数,不匹配的行数,并显示不匹配的特定行数。我知道for循环会更好,但我不记得该怎么做。我不知道从这里到哪里去,如果有人知道任何可以帮助的事情,我将不胜感激 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Li

我的任务是从两个文本文件中读取数据,将数据存储在两个单独的数组中,读取匹配的行数,不匹配的行数,并显示不匹配的特定行数。我知道for循环会更好,但我不记得该怎么做。我不知道从这里到哪里去,如果有人知道任何可以帮助的事情,我将不胜感激

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;

namespace Final_Project
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        public void grade_Click(object sender, EventArgs e)
        {
            string[] A = new string[20];
            string[] B = new string[20];
            StreamReader ifile;
            StreamReader ifile2;
            ifile = File.OpenText("answerkey.txt");
            ifile2 = File.OpenText("response.txt");
            int correct = 0;
            int incorrect = 0;
            string str = "";
            string str2 = "";
            while (ifile.EndOfStream == false & ifile2.EndOfStream == false)
            {
                str = ifile.ReadLine();
                str2 = ifile2.ReadLine();
            }

            A[correct] = str;
            B[incorrect] = str2;

            if (A[0] == B[0])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[1] == B[1])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[2] == B[2])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[3] == B[3])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[4] == B[4])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[5] == B[5])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[6] == B[6])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[7] == B[7])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[8] == B[8])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[9] == B[9])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[10] == B[10])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[11] == B[11])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[12] == B[12])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[13] == B[13])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[14] == B[14])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[15] == B[15])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[16] == B[16])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[17] == B[17])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[18] == B[18])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (A[19] == B[19])

            {
                correct++;
            }
            else

            {
                incorrect++;
            }

            if (correct >= 14)
            {
                passfail.Text = "Passed";
            }
            else
            {
                passfail.Text = "Failed";
            }

            string[] result = File.ReadAllLines("answerkey.txt");

            correctbox.Text = correct.ToString();
            incorrectbox.Text = incorrect.ToString();
        }
    }
}
这里有几个要点:

用于读取文件。 编写一个for循环,循环遍历应答文件行,比较a[i]和B[i],并更新correct和correct。 考虑一种情况,响应文件的行数少于应答文件的行数。
在while循环中,每次迭代都会覆盖str和str2,而不是将读取的数据存储在数组A和B中。这两个字符串集合之间是否存在关系。例如,如果每个集合有10个元素,您将进行10次比较,还是询问如何编写For循环?到目前为止你做了什么研究?如果你做一些搜索,我希望这样的信息很容易找到。