龟兔赛跑的小游戏

下面这段代码模拟了龟兔赛跑爬山的情况,其中有个时钟触发设置每秒执行一次循环,乌龟的规则是:50% 的机会快走(右移三格);20% 的机会下滑(左移六格);30% 的机会慢走(右移一格).

兔子的规则是:20% 的机会睡觉(不移动);20% 的机会大跳(右移九格);10% 的机会大滑(左移十二格);30% 的机会小跳(右移一格);20% 的机会小滑(左移两格).

其中最先走到整 70 格的胜利,超过 70 格的从头开始;程序在一条线上打印了龟兔移动的轨迹,当两者重合时打印 P;乌龟用 G 表示,兔子用 T 表示.

***************************************
#include<stdio.h>
#include<stdlib.h>
#include<time.h>

void guitu(void);

main()
{
srand(time(NULL));
guitu();
return 0;
}

void guitu()
{
int i,j,count=0,cou=0,number;
char printfun[71];

while(1) {
for(j=0;j<70;j++)
printfun[j]=' ';
printfun[71]='';

number=rand()%10+1;
printf("n");

if(1<=number && number<=5) {
count=count+3;
if(count>70) count=0;
printfun[count]='G';
}

if(6<=number && number<=7) {
count=count-6;
if(count<0) count=0;
printfun[count]='G';
}

if(8<=number && number<=10) {
count=count+1;
if(count>70) count=0;
printfun[count]='G';
}

if(1<=number && number<=2) {
cou=cou+0;
printfun[cou]='T';
}

if(3<=number && number<=4) {
cou=cou+9;
if(cou>70) cou=0;
printfun[cou]='T';
}

if(number==5) {
cou=cou-12;
if(cou<0) cou=0;
printfun[cou]='T';
}

if(6<=number && number<=8) {
cou=cou+1;
if(cou>70) cou=0;
printfun[cou]='T';
}

if(9<=number && number<=10) {
cou=cou-2;
if(cou<0) cou=0;
printfun[cou]='T';
}

if(count==cou)
printfun[count]='P';

printf("%s",printfun);
printf("nn");

if(count==70) {
printf("gui win!!!nn");
break;
}
if(cou==70) {
printf("tu win!!!nn");
break;
}
sleep(1);
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值