香港跑马游戏实例( CSDN博客上迁移过来)

其他 feko 3年前 (2017-12-12) 228次浏览 已收录 0个评论 扫描二维码
/* ************************************************************************
 *       Filename:  main.c
 *    Description:  
 *        Version:  1.0
 *        Created:  2017年12月22日 22时25分52秒
 *       Revision:  none
 *       Compiler:  gcc
 *         Author:  YOUR NAME (), 
 *        Company:  
 * ************************************************************************/
**//香港跑马游戏实例**
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
//宏定义 分别为 赛道长度 馬数目 最小单步 最大单步
#define LENGTH 60
#define HORSENUM 6
#define MINSTEP 1
#define MAXSTEP 10
void play(int s[])
{   
    int i,j;
    int rank=1;//名次循环使用的,中途记录名次,并初始化为1
    int dis[HORSENUM]={0};//记录六匹马跑的距离
    srand(time(0));//每次产生随机数 rand使用
    while(rank<=HORSENUM)//名次循环,直到6匹马的全部名次出来才结束
    {
                printf("n-------比赛开始------n");
        for(i=0;i<HORSENUM;i++)//6匹跑马循环
        {
                printf("%d号: ",i+1);//记录第一匹马到第六匹马

                dis[i]+=rand()%MAXSTEP+MINSTEP;//跑马的距离自加,馬每次跑的距离0-9
                //判断馬是否到终点,
                if(dis[i]>=LENGTH)
                {
                    dis[i]=LENGTH;
                    if(s[i]==0) //如果哪一匹馬到终点了,记录该匹马的名次
                        s[i]=rank++;
                }

                for(j=0;j<dis[i];j++)//打印跑马每次跑的距离
                    printf("-");

                if(s[i])//如果哪匹马到终点了,s[i]不为0,则打印出名次
                    printf("%dn",s[i]);
                else
                    printf(">n");

        }
    }
    }

int main()
{
    int s[HORSENUM] ={0};//记录6匹马的最终名次,并全部初始化为0
    play(s);
    return 0;
}

笔记阁 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:香港跑马游戏实例( CSDN博客上迁移过来)
喜欢 (0)
发表我的评论
取消评论
表情 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址