微信号:CyuyanAn

介绍:C语言C++;JAVA安卓系统软件编程,C语言编译器,C语言函数手册,C语言编程技巧,C语言视频教学,C语言考试,C语言软件开发设计,

C语言之香港赌马

2016-06-14 20:46 C语言JAVA软件编程设计


点击阅读原文加入扣扣群,领取更多的学习资料。想学习其他方面的资料,也可以留言告诉我了。
C语言之香港赌马

#include <stdio.h>

#include <time.h>

#include <windows.h>

//定义宏

#define HORSENUM 6//赛马数量

#define DISTANCE 70//赛马跑道的长度

#define MAXSTEP 5//赛马跑动一次的最长距离

#define ACCOUNT 100000//我的账户

#define MINPAY 3000//最低下注额

char horse[] = {'%', '&', '#', '@', '$', '!'};

//获取下注额

int get_deposit()

{

int deposit;

printf("请下注(最低下注额为%d元):", MINPAY);

while(!scanf("%d", &deposit) || deposit < MINPAY)

{

printf("错误,请重新下注(最低下注额为%d元):", MINPAY);

fflush(stdin);

}

return deposit;

}

//选择赛马的编号

int get_number()

{

int num;

printf("请选择赛马的编号(1~%d):", HORSENUM);

while(!scanf("%d", &num) || num < 1 || num > HORSENUM)

{

printf("错误,请重新选择赛马的编号(1~%d):", HORSENUM);

fflush(stdin);

}

return num;

}

//赛马开始比赛

void run(int rank[])

{

int i, j;

int index = 1;//赛马的名次

int dis[HORSENUM] = {0};//记录所有赛马已经跑出的距离

memset(rank, 0, sizeof(int) * HORSENUM);//把rank数组中的元素全部赋值为0

while(index <= HORSENUM)

{

system("cls");

printf("--------欢迎来到香港赌马场-----------\n");

for(i = 0; i < HORSENUM; ++i)

{

dis[i] += rand() % MAXSTEP;

if(dis[i] >= DISTANCE)

{

dis[i] = DISTANCE;

if(!rank[i])

rank[i] = index++;

}

printf("NO.%d:", i + 1);

for(j = 0; j < dis[i]; ++j)

printf(".");

if(rank[i])

printf("%d\n", rank[i]);

else

printf("%c\n", horse[i]);

}

Sleep(200);

}

}

int main()

{

int deposit; //下注额

int account = ACCOUNT;//我的账户

int rank[HORSENUM];//存储赛马的名次

int num;//获取赛马的编号

int bonus;//奖金

char answer;

srand((unsigned)time(0));//初始化随机种子

printf("你现在的账户余额为%d元!\n", account);

while(1)

{

if(account < MINPAY)

{

printf("你的钱已经不够下注了,请离开!\n");

break;

}

//获取下注额

while((deposit = get_deposit()) > account)

{

printf("你的账户没有这么多钱了!\n");

}

num = get_number() - 1;//获取赛马的编号

run(rank);

printf("\n********************************************\n");

if(rank[num] == 1)

{

bonus = deposit * 5;

printf("神啊!你太厉害了,%d号赛马竟然跑了第一名,获得了5倍奖金%d元.\n",

num + 1, bonus);

account += bonus;

}

else if(rank[num] == 2)

{

bonus = deposit * 2;

printf("厉害厉害了,%d号赛马竟然跑了第二名,获得了2倍奖金%d元.\n",

num + 1, bonus);

account += bonus;

}

else

{

deposit = deposit * rank[num] / HORSENUM;

printf("遗憾!你选择的%d号赛马只获得了第%d名, 将扣除%d元!\n", 

num + 1, rank[num], deposit);

account -= deposit;

}

printf("你现在的账户余额是%d元.\n", account);

printf("你还想再玩一次吗(y or n)?");

fflush(stdin);

scanf(" %c", &answer);

if(answer != 'y')

break;

}

return 0;

}


 
C语言JAVA软件编程设计 更多文章 系统学习项目之一贪食蛇游戏精华代码 编程中的《葵花宝典》 入门必备:自学编程,如何做到无师自通? C++都从事哪些工作能挣钱不? 教你程译设计师如何学习英文
猜您喜欢 一线科学家谈大型对撞机:需要造、应该造、尽快造 | 科学人 【▣】不同寻常家庭饲养的宠物:从黑猩猩到美洲狮 Jenkins 2.0新时代:从CI到CD 适合于小团队产品迭代的APP测试流程 大咖加盟 | Vue.js作者尤雨溪加盟Weex 移动开发新模式的无限想象!