找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2658|回复: 1
打印 上一主题 下一主题
收起左侧

战争模拟c语言程序

[复制链接]
跳转到指定楼层
楼主
ID:155622 发表于 2016-12-18 15:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

  1. #include <stdio.h>
  2. #include<stdlib.h>

  3. #define RED "\033[0;32;31m"
  4. #define GREEN "\033[0;32;32m"
  5. #define BLUE "\033[0;32;34m"
  6. #define BROWN "\033[0;33m"
  7. #define CYAN "\033[0;36m"
  8. #define PURPLE "\033[0;35m"
  9. #define NONE "\033[m"

  10. typedef struct type
  11. {
  12.     char symbol;
  13.     int money;
  14.     int attact;
  15.     double rate;
  16.     int defense;
  17.     int blood;
  18.     int area;
  19.     int distance;
  20. }Type;

  21. void move();


  22. int main(void)
  23. {
  24.     int val;

  25.   printf("---------------------------------------------------------------|");
  26.     printf("\n");
  27.     printf(" 兵种   |符号|造价|攻击力|暴击率 |防御力|血量|攻击范围|移动距离");
  28.     printf("\n");
  29.     printf("---------------------------------------------------------------|");   
  30.     printf("\n");
  31.     printf(" 弓箭手 | G  |100 |  18  | 0.05  |   1  | 100|   1~3  |  1  ");
  32.     printf("\n");
  33.     printf("---------------------------------------------------------------|");   
  34.     printf("\n");
  35.     printf(" 步兵   | B  |75  |  15  | 0.08  |   3  | 150|   1    |  1  ");
  36.     printf("\n");
  37.     printf("---------------------------------------------------------------|");
  38.     printf("\n");
  39.     printf(" 骑士   | Q  |150 |  20  |  0.1  |   5  | 200|   1    |  3  ");
  40.     printf("\n");
  41.     printf("---------------------------------------------------------------|");
  42.     printf("\n");

  43.     printf("提示:兵种之间可以有相克的,比如弓箭克骑兵,骑兵克步兵,步兵克弓箭 \n");
  44.     printf("\n");
  45.     printf("请输入战争模式:1--1000vs1000  2--金钱模式\n");
  46.     scanf("%d",&val);

  47.     switch(val)
  48.     {
  49.       case 1:
  50.                             {
  51.                                 int m,n;
  52.                                 printf("双方可以配置的最大人数为1000人\n");
  53.                                 printf("现在是防守方兵力部署:\n");
  54.                                 printf("请选择要配置的兵种:1--步兵   2--骑兵   3--弓箭手\n");
  55.                                 scanf("%d",&m);
  56.                                 switch(m)
  57.                                 {
  58.                                 case 1:
  59.                                                 {
  60.                                                     printf(RED"请输入步兵的人数:\n"NONE);
  61.                                                     scanf("%d",&m);
  62.                                                 }
  63.                                 case 2:
  64.                                                 {
  65.                                                     printf(GREEN"请输入骑兵的人数:\n"NONE);
  66.                                                     scanf("%d",&m);
  67.                                                 }
  68.                                 case 3:
  69.                                                 {
  70.                                                     printf(BLUE"请输入弓箭手的人数:\n"NONE);
  71.                                                     scanf("%d",&m);
  72.                                                 }
  73.                                 }
  74.                                 printf("\n");
  75.                                 printf("现在是进攻方兵力部署:\n");
  76.                                 printf("请选择要配置的兵种:1--步兵   2--骑兵   3--弓箭手\n");
  77.                                 scanf("%d",&n);
  78.                                 switch(n)
  79.                                 {
  80.                                     case 1:
  81.                                                     {
  82.                                                         printf(BROWN"请输入步兵的人数:\n"NONE);
  83.                                                         scanf("%d",&n);
  84.                                                     }
  85.                                     case 2:
  86.                                                     {
  87.                                                         printf(CYAN"请输入骑兵的人数:\n"NONE);
  88.                                                         scanf("%d",&n);
  89.                                                     }
  90.                                     case 3:
  91.                                                     {
  92.                                                         printf(PURPLE"请输入弓箭手的人数:\n"NONE);
  93.                                                         scanf("%d",&n);
  94.                                                     }
  95.                                 }   
  96.                                 printf("游戏开始:\n");
  97.                                 break;
  98.                         }
  99.     case 2:
  100.                     {
  101.                     int money,m,n;
  102.                     printf("请输入双方拥有的金钱数:\n");
  103.                     scanf("%d",&money);
  104.                     printf("现在是防守方兵力部署:\n");
  105.                     printf("请选择需要购买的兵种:1--步兵   2--骑兵   3--弓箭手\n");
  106.                     scanf("%d",&m);
  107.                     switch(m)
  108.                     {
  109.                         int bu,qi,gj;
  110.                         case 1:
  111.                                         {
  112.                                             printf(RED"请输入购买步兵的人数:\n"NONE);
  113.                                             scanf("%d",&bu);
  114.                                             if(bu*75<money)
  115.                                             printf("还剩余的金钱数%d:\n",money-(bu*75));
  116.                                         }
  117.                         case 2:
  118.                                         {                    
  119.                                             printf(GREEN"请输入购买骑兵的人数:\n"NONE);
  120.                                             scanf("%d",&qi);
  121.                                             if(qi*150<(money-(bu*75)))
  122.                                             printf("还剩余的金钱数%d:\n",money-(qi*150+bu*75));
  123.                                         }
  124.                         case 3:
  125.                                         {
  126.                                             printf(BLUE"请输入购买弓箭手的人数:\n"NONE);
  127.                                             scanf("%d",&gj);
  128.                                             if(gj*100<(money-(qi*150+bu*75)))
  129.                                             printf("还剩余的金钱数%d:\n",money-(gj*100+qi*150+bu*75));
  130.                                         }
  131.                     }
  132.                     printf("现在是进攻方兵力部署:\n");
  133.                     printf("请选择需要购买的兵种:1--步兵   2--骑兵   3--弓箭手\n");
  134.                     scanf("%d",&n);
  135.                     switch(n)
  136.                     {
  137.                         int bu,qi,gj;
  138.                         case 1:
  139.                                         {
  140.                                             printf(RED"请输入购买步兵的人数:\n"NONE);
  141.                                             scanf("%d",&bu);
  142.                                             if(bu*75<money)
  143.                                             printf("还剩余的金钱数%d:\n",money-(bu*75));
  144.                                         }
  145.                         case 2:
  146.                                         {                    
  147.                                             printf(GREEN"请输入购买骑兵的人数:\n"NONE);
  148.                                             scanf("%d",&qi);
  149.                                             if(qi*150<(money-(bu*75)))
  150.                                             printf("还剩余的金钱数%d:\n",money-(qi*150+bu*75));
  151.                                         }
  152.                         case 3:
  153.                                         {
  154.                                             printf(BLUE"请输入购买弓箭手的人数:\n"NONE);
  155.                                             scanf("%d",&gj);
  156.                                             if(gj*100<(money-(qi*150+bu*75)))
  157.                                             printf("还剩余的金钱数%d:\n",money-(gj*100+qi*150+bu*75));
  158.                                         }
  159.                     }
  160.                     printf("游戏开始:\n");
  161.                     break;
  162.                     }
  163.     }

  164.     return 0;
  165. }

复制代码
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:71908 发表于 2017-1-14 19:59 | 只看该作者
走过路过千万别错过
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表