溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#怎么實現石頭剪刀布游戲

發布時間:2022-05-10 13:42:50 來源:億速云 閱讀:494 作者:zzz 欄目:開發技術

C#怎么實現石頭剪刀布游戲

石頭剪刀布是一種簡單而有趣的游戲,通常由兩個人參與。玩家通過選擇“石頭”、“剪刀”或“布”來決定勝負。本文將介紹如何使用C#編程語言實現一個簡單的石頭剪刀布游戲。

1. 游戲規則

在石頭剪刀布游戲中,每個玩家同時做出一個選擇,選擇可以是“石頭”、“剪刀”或“布”。游戲規則如下:

  • 石頭勝剪刀
  • 剪刀勝布
  • 布勝石頭

如果兩個玩家選擇相同,則為平局。

2. 實現步驟

2.1 創建項目

首先,打開Visual Studio并創建一個新的C#控制臺應用程序項目。

2.2 定義選擇

我們需要定義玩家的選擇??梢允褂妹杜e類型來表示“石頭”、“剪刀”和“布”。

enum Choice
{
    Rock,
    Paper,
    Scissors
}

2.3 獲取玩家輸入

接下來,我們需要獲取玩家的輸入。玩家可以通過輸入“1”表示石頭,“2”表示剪刀,“3”表示布。

static Choice GetPlayerChoice()
{
    Console.WriteLine("請選擇:1. 石頭 2. 剪刀 3. 布");
    string input = Console.ReadLine();
    int choice = int.Parse(input);

    switch (choice)
    {
        case 1:
            return Choice.Rock;
        case 2:
            return Choice.Scissors;
        case 3:
            return Choice.Paper;
        default:
            Console.WriteLine("無效的選擇,請重新選擇。");
            return GetPlayerChoice();
    }
}

2.4 生成電腦選擇

電腦的選擇可以通過隨機數生成。

static Choice GetComputerChoice()
{
    Random random = new Random();
    int choice = random.Next(1, 4);

    switch (choice)
    {
        case 1:
            return Choice.Rock;
        case 2:
            return Choice.Scissors;
        case 3:
            return Choice.Paper;
        default:
            return Choice.Rock;
    }
}

2.5 判斷勝負

根據玩家的選擇和電腦的選擇,判斷勝負。

static void DetermineWinner(Choice playerChoice, Choice computerChoice)
{
    if (playerChoice == computerChoice)
    {
        Console.WriteLine("平局!");
    }
    else if ((playerChoice == Choice.Rock && computerChoice == Choice.Scissors) ||
             (playerChoice == Choice.Scissors && computerChoice == Choice.Paper) ||
             (playerChoice == Choice.Paper && computerChoice == Choice.Rock))
    {
        Console.WriteLine("你贏了!");
    }
    else
    {
        Console.WriteLine("你輸了!");
    }
}

2.6 主程序

最后,我們將上述步驟組合在一起,完成游戲的主程序。

static void Main(string[] args)
{
    Console.WriteLine("歡迎來到石頭剪刀布游戲!");

    Choice playerChoice = GetPlayerChoice();
    Choice computerChoice = GetComputerChoice();

    Console.WriteLine($"你選擇了:{playerChoice}");
    Console.WriteLine($"電腦選擇了:{computerChoice}");

    DetermineWinner(playerChoice, computerChoice);

    Console.WriteLine("游戲結束,按任意鍵退出。");
    Console.ReadKey();
}

3. 完整代碼

以下是完整的C#代碼:

using System;

namespace RockPaperScissors
{
    enum Choice
    {
        Rock,
        Paper,
        Scissors
    }

    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("歡迎來到石頭剪刀布游戲!");

            Choice playerChoice = GetPlayerChoice();
            Choice computerChoice = GetComputerChoice();

            Console.WriteLine($"你選擇了:{playerChoice}");
            Console.WriteLine($"電腦選擇了:{computerChoice}");

            DetermineWinner(playerChoice, computerChoice);

            Console.WriteLine("游戲結束,按任意鍵退出。");
            Console.ReadKey();
        }

        static Choice GetPlayerChoice()
        {
            Console.WriteLine("請選擇:1. 石頭 2. 剪刀 3. 布");
            string input = Console.ReadLine();
            int choice = int.Parse(input);

            switch (choice)
            {
                case 1:
                    return Choice.Rock;
                case 2:
                    return Choice.Scissors;
                case 3:
                    return Choice.Paper;
                default:
                    Console.WriteLine("無效的選擇,請重新選擇。");
                    return GetPlayerChoice();
            }
        }

        static Choice GetComputerChoice()
        {
            Random random = new Random();
            int choice = random.Next(1, 4);

            switch (choice)
            {
                case 1:
                    return Choice.Rock;
                case 2:
                    return Choice.Scissors;
                case 3:
                    return Choice.Paper;
                default:
                    return Choice.Rock;
            }
        }

        static void DetermineWinner(Choice playerChoice, Choice computerChoice)
        {
            if (playerChoice == computerChoice)
            {
                Console.WriteLine("平局!");
            }
            else if ((playerChoice == Choice.Rock && computerChoice == Choice.Scissors) ||
                     (playerChoice == Choice.Scissors && computerChoice == Choice.Paper) ||
                     (playerChoice == Choice.Paper && computerChoice == Choice.Rock))
            {
                Console.WriteLine("你贏了!");
            }
            else
            {
                Console.WriteLine("你輸了!");
            }
        }
    }
}

4. 運行游戲

編譯并運行程序,你將能夠與電腦進行石頭剪刀布游戲。每次游戲結束后,程序會顯示結果,并提示你按任意鍵退出。

5. 總結

通過這個簡單的C#程序,我們實現了一個石頭剪刀布游戲。這個程序展示了如何使用枚舉、隨機數生成、條件判斷等基本編程概念。你可以在此基礎上進一步擴展,例如增加游戲次數統計、增加圖形界面等,使游戲更加有趣和復雜。

希望這篇文章對你理解如何使用C#實現石頭剪刀布游戲有所幫助!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女