900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > C语言实现 掷骰子游戏

C语言实现 掷骰子游戏

时间:2022-08-11 18:41:11

相关推荐

C语言实现 掷骰子游戏

掷骰子游戏

1.案例描述

规则:一盘游戏中,两人轮流掷骰子5次,并将每次掷的点数累加,5局之后,累计点数较大者获胜,点数相同则为平局。案例要求通过编程算出50盘之后的胜利者(50盘中赢的盘数最多的,即最终胜利者。)

2.案例设计

1.创建一个存放角色信息的结构体,用于储存每局获得的分数和获胜的次数

2.每个角色轮流生成5个随机数,统计随机数的和,和最大的赢得此局胜利

3.统计50次比赛后的结果,获胜次数最多者是最总胜利者

4.输出结果

3.代码实现

#include<stdio.h>#include<stdlib.h>#include <time.h>struct Player{//创建角色属性char name[10];int mark;//局的分数 int count;//获胜次数 }A={"A",0,0},B={"B",0,0};//初始化角色int main(){int throw_(int times,char *p );int n;//开始比赛 //#include <time.h>,用于刷新随机数 srand((unsigned)time(NULL));for(n=0;n<50;n++){printf("第%d局开始\n",n);A.mark=throw_(5,A.name);B.mark=throw_(5,B.name);if(A.mark<B.mark){printf("B获胜\n");B.count++; }else if(A.mark>B.mark){printf("A获胜\n");A.count++;}else{printf("平局\n");}}//输出比赛结果printf("A共获胜%d局,B共获胜%d局\n",A.count,B.count); if(A.count!=B.count)//赢得局数多则为最终胜利者 printf(A.count>B.count?"A获胜":"B获胜");elseprintf("平局");return 0;}int throw_(int times,char *p ){int t,temp,sum=0;//扔出times次骰子,输出结果并统计分数 printf("%s的五次得分为:",p); for(t=0;t<times;t++){temp = rand()%6+1;printf("%d,",temp);sum +=temp; }printf("%s共获得%d分:\n",A,sum);return sum;}

4.运行结果

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。