飞行棋游戏代码(C#)

220224飞行器v1.0

using System;

namespace AeroplaneChess
{
   
    class Program
    {
   
        //地图
        static int[] Maps = new int[100];
        //玩家A B坐标
        static int[] playerPos = new int[2];
        //玩家姓名
        static string[] playerNames = new string[2];
        //玩家回合标记
        static bool[] Flags = new bool[2];
        /// <summary>
        /// 主函数
        /// </summary>
        /// <param name="args"></param>
        static void Main(string[] args)
        {
   
            //游戏封面
            GameShow();
            #region 输入玩家姓名
            Console.WriteLine("请输入玩家A姓名");
            playerNames[0] = Console.ReadLine();
            while (playerNames[0]=="")
            {
   
                Console.WriteLine("玩家A姓名不能为空,请重新输入");
                playerNames[0] = Console.ReadLine();
            }
            Console.WriteLine("请输入玩家B姓名");
            playerNames[1] = Console.ReadLine();
            while (playerNames[1] == "" || playerNames[1] == playerNames[0])
            {
   
                if(playerNames[1] == "")
                {
   
                    Console.WriteLine("玩家B姓名不能为空,请重新输入");
                    playerNames[1] = Console.ReadLine();
                }
                if (playerNames[1] == playerNames[0])
                {
   
                    Console.WriteLine("玩家B姓名不能与玩家A相同,请重新输入");
                    playerNames[1] = Console.ReadLine();
                }
                    
            }
            #endregion
            Console.Clear();//清屏
            GameShow();
            Console.WriteLine("{0}的飞机用A表示,{1}的士兵用B表示", playerNames[0], playerNames[1]);
            //初始化地图
            InitMap();
            //显示棋盘
            DrawMap();
            //胜利界面

            //游戏逻辑
            while (playerPos[0] < 99 && playerPos[1] < 99)
            {
   
                if (Flags[0] == false)
                {
   
                    playGame(0);
                }
                else
                {
   
                    Flags[0] = false;
                }
                if(playerPos[0]>=99)
                {
   
                    Console.WriteLine("玩家{0}无耻的赢了玩家{1}"<
  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
飞行棋是一种非常经典的棋类游戏,下面是一个简单的飞行棋游戏的C语言代码示例: ```c #include <stdio.h> #include <stdlib.h> #include <time.h> #define BOARD_SIZE 30 #define PLAYER_COUNT 4 // 玩家结构体 typedef struct { int position; int isFinished; } Player; // 初始化玩家 void initPlayers(Player players[]) { for (int i = 0; i < PLAYER_COUNT; i++) { players[i].position = 0; players[i].isFinished = 0; } } // 掷骰子 int rollDice() { return rand() % 6 + 1; } // 移动玩家 void movePlayer(Player* player, int steps) { player->position += steps; if (player->position >= BOARD_SIZE) { player->position = BOARD_SIZE - 1; player->isFinished = 1; } } // 判断是否有玩家到达终点 int isGameFinished(Player players[]) { for (int i = 0; i < PLAYER_COUNT; i++) { if (players[i].isFinished) { return 1; } } return 0; } // 打印玩家位置 void printPlayerPositions(Player players[]) { for (int i = 0; i < PLAYER_COUNT; i++) { printf("Player %d: %d\n", i + 1, players[i].position); } } int main() { srand(time(NULL)); Player players[PLAYER_COUNT]; initPlayers(players); while (!isGameFinished(players)) { for (int i = 0; i < PLAYER_COUNT; i++) { if (!players[i].isFinished) { int steps = rollDice(); movePlayer(&players[i], steps); } } printPlayerPositions(players); printf("\n"); } return 0; } ``` 这段代码实现了一个简单的飞行棋游戏,包括玩家的初始化、骰子的投掷、玩家的移动、判断游戏是否结束以及打印玩家位置等功能。你可以根据需要进行修改和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值