1.先定双方抽扑克牌的数量
2.生成双方随机数
3.输出双方的扑克牌点数
4.双方点数分别相加
5.比大小
6.判断是否再来一局
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
namespace 扑克牌比大小游戏
{
/// <summary>
/// 游戏规则:玩家与电脑各抽两张牌,J相当于11点,Q相当于12点,K相当于13点,接着点数相加,最后比较大小。
/// </summary>
class Program
{
static void Main(string[] args)
{
Console.WriteLine("欢迎来到扑克牌比大小的游戏!");
//玩家扑克牌的点数
int[] playerdice = new int[2];
//电脑扑克牌的点数
int[] diannao = new int[2];
//生成随机数
var rnd = new Random();
while (true)
{
#region 抽牌
Console.WriteLine("\n按回车键开始游戏");
Console.ReadLine();
//给玩家随机赋值1-13
for (int i = 0; i < playerdice.Length; i++)
playerdice[i] = rnd.Next(1, 14);
Thread.Sleep(2000);
//输出玩家点数
Console.WriteLine($"你的扑克牌点数为:{string.Join(",", playerdice)}");
//电脑抽牌
Console.WriteLine("\n电脑开始抽牌");
Thread.Sleep(2000);
for (int i = 0; i < diannao.Length; i++)
diannao[i] = rnd.Next(1, 14);
//输出电脑点数
Console.WriteLine($"\n电脑的扑克牌点数为:{string.Join(",", diannao)}");
#endregion
#region 判断比大小的结果
//计算点数
int playerscore = 0;
int comscore = 0;
for (int i = 0; i < playerdice.Length; i++)
{
playerscore += playerdice[i];
comscore += diannao[i];
}
Console.WriteLine($"玩家的扑克牌点数是{playerscore}");
Console.WriteLine($"电脑的扑克牌点数是{comscore}");
//比较大小
if (playerscore > comscore)
Console.WriteLine($"恭喜玩家获胜!");
else if (playerscore < comscore)
Console.WriteLine($"恭喜电脑获胜!");
else
Console.WriteLine($"平局!");
#endregion
Console.WriteLine($"\n是否继续玩?(Y/N)");
var input = Console.ReadLine().ToLower();
if (input != "y")
{
Console.WriteLine($"感谢你的使用,下次再见!");
break;
}
}
}
}
}
说明:
1. Thread.Sleep(2000);因为上面的using中没有Thread,所以需要在上面加入using System.Threading;
2. #region ...... #endregion可以使代码折叠起来,这样看起代码来更加方便。
运行结果如下: