C# リストからランダムな要素を選択する 質問する

C# リストからランダムな要素を選択する 質問する

小さなクイズ コンソール アプリケーションを作成しています。3 つの質問を含むリストを作成しました。プログラムでランダムに質問を選択し、コンソールに出力するにはどうすればよいですか?

いくつかの異なるコードを試してみましたが、何らかの理由でうまく動作しないようです。これは私が試した最後のコードで、このサイトの別のユーザーから入手したものですが、エラーが発生します:

名前「string」は現在のコンテキストに存在しません。

Quiz.Questions.main()返品以来空所「return キーワードの後に​​オブジェクト式を続けることはできません」。

最後に試したコードは次のとおりです。

class Questions
{
    public static void main()
    {
        var questions = new List<string>{
            "question1",
            "question2",
            "question3"};
        int index = Random.Next(strings.Count);
        questions.RemoveAt(index);
        return questions;

    }

}

皆さんの回答に感謝します。リストの代わりに配列を作成することで問題を解決しました。これが現在のコードです:

class Questions
{
    public static void main()
    {
        string[] questions = new string[3];
        questions[0] = "question1";
        questions[1] = "question2";
        questions[2] = "question3";
        Random rnd = new Random();
        Console.WriteLine(questions[rnd.Next(0,2)]);
    }
}

ベストアンサー1

質問を削除して残りの質問を戻してもよろしいですか? 1 つだけ選択するべきではないですか? 次のようになります:

public static void main()
{
    var random = new Random();
    var questions = new List<string>{
        "question1",
        "question2",
        "question3"};
    int index = random.Next(questions.Count);
    Console.WriteLine(questions[index]);
}

おすすめ記事