存储分数等级并在数组中为他们评分,初学者

时间:2018-10-02 18:30:50

标签: c# arrays

我是C#的初学者,我不知道如何正确使用数组,这是一个问题:

编写一个程序,该程序读取测验的分数,并根据给定的分数等级确​​定测验的分数。将分数和分数存储在一个数组中,并使用这些数组确定分数。在这里,我尝试进行编码,并且应该用于循环或其他操作?

Console.WriteLine("Write your score : ");
        int score = Convert.ToInt32(Console.ReadLine());
        int n = 5;
        int[] vect = new int[n];
        TestResults(vect);



    }

    private static void TestResults(int [] vect)
    {

    }

1 个答案:

答案 0 :(得分:2)

让我们细分您的问题以尝试解决它。​​

  

读取测验分数

简单,您可以使用Console.ReadLine之类的东西,它可以接受用户输入的测试成绩。

string grade = Console.ReadLine(); // save the user input in a string
  

确定测试的分数

我假设你的意思是百分比。尝试获取用户输入,将其除以测试总数,然后获取该值应该很好。由于Console.ReadLine将返回一个字符串,因此需要将string转换为int

int mark;

if (int.TryParse(grade, out _grade))
{
    mark = (double percentage = _grade / total_of_test) * 100;
}
  

将成绩和分数存储在数组中

您可以编写一个名为TestResults的类,创建2个变量,一个用于成绩,一个用于标记,然后将该类添加到TestResults[]的数组中。这样您就可以根据自己的喜好直接打分或打分。

public class TestResults
{
    int marks;
    int grades;
}

我希望这会有所帮助。下次请注意,并发布一些代码,表明您至少尝试解决了该问题。

编辑:在创建数组方面,让我们看一个例子

这是一个数组的例子:

int[] this_int_array = new int[] { 4, 5, 6, 7, 8, 9 }

此代码将自动将数组的长度设为6,因此我们不需要一开始就指定长度。可以通过以下方式访问它:

this_int_array[0] // till 5, since programming starts counting at 0.

在您的情况下,类似这样的方法应该起作用。首先,让我们看一下测试结果类。我们有2个领域,分数和等级。我们可以从实例化字段中直接访问它们(TestResults tr = new TestResults是实例化的一个实例。定义为new的任何事物都将被实例化)

public class TestResults
{
    int marks;
    int grades;
}

然后,为了使其成为数组,请执行以下操作:

TestResult student_A = new TestResult {
                                marks = 9;
                                grades = 90; // as an example
                            }

然后,一旦您有了一个不错的学生列表,我们就可以将他们添加到数组中。

TestResult[] all_results = new TestResults[] {
                                    student_A,
                                    student_B,
                                    student_C
                                }

我希望这更加清楚。