如何检查值在数组中出现的次数?

Tat*_*atu 1 c# arrays

所以这就是我希望我的输出看起来像:

How many numbers? 10
Give number 1: 1
Give number 2: 3
Give number 3: 1
Give number 4: 3
Give number 5: 4
Give number 6: 6
Give number 7: 4
Give number 8: 8
Give number 9: 2
Give number 10: 1
Number 1 appeared 3 times
Number 2 appeared 1 times
Number 3 appeared 2 times
Number 4 appeared 2 times
Number 6 appeared 1 times
Number 8 appeared 1 times
Run Code Online (Sandbox Code Playgroud)

问题是,我已经完成了读取用户输入的部分.但是,我不知道如何继续讲述每个数字出现次数的部分.

另外,我这样做是作为一项功课,所以大部分代码都是芬兰语.不过,我希望你仍能理解它.

using System;

namespace Ohjelma
{
    class Ohjelma
    {
        static void Main()
        {
            Console.Write("Kuinka monta lukua? ");
            int pituus = Convert.ToInt32(Console.ReadLine());

            int[] luvut = new int[pituus];


            for (int i = 0; i < pituus; i++)
            {
                Console.Write("Anna {0}. luku:", i + 1);
                luvut[i] = Convert.ToInt32(Console.ReadLine());
            }

            for (int i = 0; i < luvut.Length; i++)
            {
                Console.Write(luvut[i]);

            }
            Console.ReadLine();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

编辑:对于它应该输出的示例的代码块感到抱歉,即使我尝试过,也不确定如何使用blockquotes.谢谢!

Hab*_*bib 7

您可以像这样使用 LINQ:

var query = luvut.GroupBy(r => r)
                .Select(grp => new
                {
                    Value = grp.Key,
                    Count = grp.Count()
                });
Run Code Online (Sandbox Code Playgroud)

对于输出,您可以使用:

foreach (var item in query)
{
    Console.WriteLine("Value: {0}, Count: {1}", item.Value, item.Count);
}
Run Code Online (Sandbox Code Playgroud)


use*_*460 6

int[] num = { 1, 1, 1, 3, 3, 4, 5, 6, 7, 0 };
int[] count = new int[10];

//Loop through 0-9 and count the occurances
for (int x = 0; x < 10; x++){
    for (int y = 0; y < num.Length; y++){
        if (num[y] == x)
            count[x]++;
    }
}

//For displaying output only            
for (int x = 0; x < 10; x++)
    Console.WriteLine("Number " + x + " appears " + count[x] + " times");
Run Code Online (Sandbox Code Playgroud)

节目输出:

Number 0 appears 1 times
Number 1 appears 3 times
Number 2 appears 0 times
Number 3 appears 2 times
Number 4 appears 1 times
Number 5 appears 1 times
Number 6 appears 1 times
Number 7 appears 1 times
Number 8 appears 0 times
Run Code Online (Sandbox Code Playgroud)

我理解当你所有的同学都完成他们的时候感觉有多糟糕,你还在苦苦挣扎.我的代码应该足够简单,以便您学习.