当前位置: 首页 > news >正文

长沙网站排名优化做网站都需要哪些信息

长沙网站排名优化,做网站都需要哪些信息,人才网站建设,郑州官方发布最新消息目录 1. 玩法说明 2. 分析和设计 3. 代码实现 4. 游戏演示1. 玩法说明 一副54张牌,3最小,两个王最大,其实是2,和上面一样从大到小排列 2. 分析和设计 2.1 分析和设计 常量和变量设计 一副牌有54张,有牌的数值和花色,可以分别用两个数组来存储,card为卡牌表示的数值,color为…目录 1. 玩法说明 2. 分析和设计 3. 代码实现 4. 游戏演示1. 玩法说明 一副54张牌,3最小,两个王最大,其实是2,和上面一样从大到小排列 2. 分析和设计 2.1 分析和设计 常量和变量设计 一副牌有54张,有牌的数值和花色,可以分别用两个数组来存储,card为卡牌表示的数值,color为它的花色 卡牌创建好要进行游戏,需要将牌分给玩家,那么玩家也需要存储这些卡牌,玩家一般由三人,但也不确定,每个人有一副卡牌,所以适合用二维数组存储 PLAYER: 玩家数量,默认为3 PLAYCARDS: 底牌为3,所以每个玩家申请的数组大小是54减去三张底牌除以玩家数量,然后考虑加入底牌的情况,数字大小再加3 lord记录地主的下标 函数设计 菜单显示函数 void menu(); 卡牌初始化赋值函数 void InitCard(int num[],int numcolor[],int len); 考虑到需要比较卡牌的大小,从1开始赋值,1为最小的牌,通过下面的转换函数,将1转换为最小牌3的ascii码输出,花色每4个一轮,红心从3开始赋值,大小王单独赋值为14和15 转换字符函数 char ChangeCard(int num); 将牌的大小转换为对应大小的ascii码输出 显示卡牌函数 由于10是两个字符,一个字符放不下,所以单独判断输出,大小王没有花色,也单独输出,17个一换行 洗牌函数 void RandomCard(int num[], int numcolor[], int len); 传入牌的数组和花色,思路是先从1-53下标找一个和0下标交换,之后从2-53找一个和1下标交换,从3-53找一个和2下标交换。数值和花色都需要交换这里需要随机数函数在主程序先置一个随机数种子 发牌函数 void SendCard(int num[], int numcolor[], int playnum[][PLAYCARDS],int playcolor[][PLAYCARDS], int len); 由于玩家是二维数组,而卡牌是一维数组,所以需要一些计算。当第一个玩家也就是i0的时候循环17次一人17张手牌所以赋值的卡牌下标就是0-16当第二个玩家是下标从17-33当i1时卡牌数组num中括号里的值需要是17所以用i 乘玩家卡牌常量PLAYCARDS再减去多余的3张地主牌就是 1*(20-3)0,然后把底牌手牌也输出 选地主函数 void LandLord(int num[], int numcolor[], int playnum[][PLAYCARDS], int playcolor[][PLAYCARDS], int len,int *lord); 遍历玩家数组,找到红心4的拥有者,选为地主,传入地主变量的地址,接收地主编号,将地主玩家的手牌中加入底牌 开始出牌显示 void PlayShow(int playnum[][PLAYCARDS], int playcolor[][PLAYCARDS],int len,int lord); 这时分农民和地主的显示,大致和ShowCard函数的逻辑一致,只是加入了地主和农民的分辨 3. 代码实现 #define _CRT_SECURE_NO_WARNINGS #include stdio.h #include stdlib.h #include string.h #include time.h #include windows.h#define PLAYER 3 //玩家数量 #define PLAYCARDS (54-3)/PLAYER3 //玩家申请数量void InitCard(int num[],int numcolor[],int len) {printf(初始化卡牌...\r\n);Sleep(1000);//牌的大小赋值,从1开始,依次累加int index 0; //牌大小int color 3; //牌花色for (int i 0; i len-2; i) {if (i % 4 0) {index;color 3;}num[i] index;numcolor[i] color;color;}num[52] 14;num[53] 15; }void RandomCard(int num[], int numcolor[], int len) {int index 0;for (int i 1; i len; i) {//1 1-53 2 2-53 3 3-53//从后面随机一个,先和0下标交换,不断往后移index rand() % (len-i) i;int temp num[i-1];int tempcolor numcolor[i - 1];num[i - 1] num[index];numcolor[i - 1] numcolor[index];num[index] temp;numcolor[index] tempcolor;} }char ChangeCard(int num) {switch (num % 16){case 1:return 3;case 2:return 4;case 3:return 5;case 4:return 6;case 5:return 7;case 6:return 8;case 7:return 9;case 8:return 0;case 9:return J;case 10:return Q;case 11:return K; case 12:return A;case 13:return 2;case 14:return \x1;case 15:return \x2;default:break;} } void ShowCard(int num[],int numcolor[], int len) {for (int i 0; i len; i) {//大小王和10单独显示if (num[i] 14 || num[i] 15) {printf(%c , ChangeCard(num[i]));}else if (num[i] 8) {printf(%c%d , numcolor[i],10);}else {printf(%c%c , numcolor[i], ChangeCard(num[i]));}if ((i1) % 17 0) {printf(\r\n);}}printf(\r\n); }//参数,卡牌数组和花色数组,玩家卡牌数组和花色数组,卡牌长度,玩家数量 void SendCard(int num[], int numcolor[],int playnum[][PLAYCARDS],int playcolor[][PLAYCARDS],int len) {system(cls);printf(发牌中...);Sleep(1000);system(cls);for (int i 0; i PLAYER; i) {for (int j 0; j PLAYCARDS-3; j) {playnum[i][j] num[i * (PLAYCARDS-3) j];playcolor[i][j] numcolor[i * (PLAYCARDS - 3)j];}}printf(\r\n);//显示手牌for (int i 0; i PLAYER; i) {printf(play%d:\r\n, i 1);ShowCard(playnum[i], playcolor[i], PLAYCARDS - 3);}//显示底牌printf(底牌:\r\n);for (int i len- PLAYER; i len; i) {printf(%c%c , numcolor[i], ChangeCard(num[i]));}printf(\r\n); }void LandLord(int num[], int numcolor[], int playnum[][PLAYCARDS], int playcolor[][PLAYCARDS],int len,int *lord) {for (int i 0; i PLAYER; i) {for (int j 0; j PLAYCARDS - 3; j) {//红心4为地主if (playnum[i][j] 2 playcolor[i][j] 3) {*lord i;printf(地主是play%d\r\n, *lord 1);goto NEXT;}}}NEXT:Sleep(3000);//地主加入底牌playnum[*lord][17] num[51];playcolor[*lord][17] numcolor[51];playnum[*lord][18] num[52];playcolor[*lord][18] numcolor[52];playnum[*lord][19] num[53];playcolor[*lord][19] numcolor[53];}void PlayShow(int playnum[][PLAYCARDS], int playcolor[][PLAYCARDS],int len,int lord) {system(cls);printf(开始出牌...\r\n);Sleep(1000);//显示手牌for (int i 0; i PLAYER; i) {if (i lord) {printf((地主)play%d:\r\n, i 1);}else {printf((农民)play%d:\r\n, i 1);}for (int j 0; j len; j) {//大小王和10单独显示if (playnum[i][j] 14 || playnum[i][j] 15) {printf(%c , ChangeCard(playnum[i][j]));}else if(playnum[i][j] 8){printf(%c%d , playcolor[i][j], 10);}else {printf(%c%c , playcolor[i][j], ChangeCard(playnum[i][j]));}}printf(\r\n);}printf(\r\n); } void menu() {system(cls);printf(********************\r\n);printf(*****1.开始游戏*****\r\n);printf(*****0.退出游戏*****\r\n);printf(********************\r\n); } int main() {srand((unsigned int)time(NULL));//创建卡牌数组int card[54] { 0 };int color[54] { 0 };//创建玩家数组int playcard[PLAYER][PLAYCARDS] {0};int playcolor[PLAYER][PLAYCARDS] {0};//卡牌长度int len sizeof(card) / sizeof(card[0]);//地主int lord 0;int sel; //获取用户选择menu();do{scanf(%d, sel);switch (sel) {case 1:system(cls);//初始化卡牌InitCard(card, color, len);//洗牌RandomCard(card, color, len);//ShowCard(card, color, len);//发牌SendCard(card, color, playcard, playcolor, len);//选地主LandLord(card, color, playcard, playcolor, len,lord);//开始出牌PlayShow(playcard, playcolor, PLAYCARDS,lord);break;case 0:printf(退出游戏\r\n);return;break;default:menu();printf(输入错误\r\n); break;}} while (1);return 0; } 4. 游戏演示 需要将控制台右键属性切换为点阵字体,显示ascii符号 开始游戏 初始化卡牌 3. 选完地主显示 4. 出牌显示 后续功能等待开发…
http://www.zqtcl.cn/news/686916/

相关文章:

  • 网站建设在哪个软件下做中国最大的现货交易平台
  • 西宁做网站公司电话加强局网站建设
  • 佛山做企业网站公司做贸易做个外贸网站有必要吗
  • 南昌制作网站的公司wordpress 分享到插件
  • 大型网站怎样做优化PHP站长工具怎么用
  • 响应式模板网站建设营销型网站建设怎么收费
  • 夺宝网站开发全网seo优化电话
  • 宁夏建设工程招标投标信息管理中心网站广告多的网站
  • c 网站做死循环北京响应式的网站设计
  • 手机门户网站建设莱芜雪野湖国际会议中心酒店
  • 男人女人做那事网站vue加wordpress
  • 古色古香 网站模板西安企业黄页网站
  • 上海企业网站怎么建设交互设计网站有哪些
  • 企业网站设计与制作开发一款游戏app需要多少钱
  • 贵阳网站方舟网络北京手机网站制作
  • 烟台小学网站建设做盗版电影网站问题
  • 做网站语言知乎长春财经学院学费多少
  • 大丰有做网站的电子商城网站开发要多少钱
  • 南京建设网站制作手机怎么制作网页
  • 杭州pc网站建设方案网站建设要准备的内容
  • 壶关网站建设中国专利申请网官网
  • 具体的网站建设方案网页程序开发采购
  • 泉州 网站建设苏州网站外包
  • 网站做404页面怎么做网站开发过程的基本环节
  • 做网站是前端还是后端小程序网站模板
  • 学校网站建设与维护建设银行官网电话
  • dedecms网站地图修改软件开发公司规章制度
  • 大型旅游网站骏驰网站开发
  • 有心学做网站两学一做知识竞赛试题网站
  • 西宁圆井模板我自己做的网站怎么做网站能快速赚钱