使用循环结构来模拟玩家对战(这里我用的是while 循环);
使用时间函数作为种子,产生不一样的随机数字;
rand( )函数的取值范围为 0---32767;
c代码如下:
#include
#include
#include
int main()
{
printf("***************游戏开始*****************\n");
srand(time(NULL));//使用时间作为种子,产生不一样的随机数字
printf("随机数字:%d\n", rand());//rand()函数的取值范围为0~32767
/*
使用循环模拟实现玩家对战
双方初始血量为100
每次攻击5-15
hp先到0为输
*/
int hp1 = 100, hp2 = 100;
int att1, att2;
int i = 0;//对战轮数
while (hp1 >= 0 && hp2 >= 0)
{
printf("第%d轮:\n", i + 1);
att1 = rand() % 11 + 5;//默认玩家1先攻击
if (att1 == 15)
{
att1 *= 2;//暴击伤害
printf("玩家1放出大招排山倒海,产生暴击!\n");
}
hp2 -= att1;
printf("玩家2: 啊!好疼!\n");
att2 = rand() % 11 + 5;
hp1 -= att2;
printf("玩家1: 算你狠!\n");
if (att2 == 15)
{
att2 *= 2;
printf("玩家2放出大招神龙摆尾,产生暴击!\n");
}
printf("玩家1攻击力:%d,玩家2的剩余血量%d\n", att1, hp2);
printf("玩家2攻击力:%d,玩家1的剩余血量%d\n", att2, hp1);
printf("******************************************\n");
i++;
Sleep(1000);
}
printf("KO!,游戏结束!\n玩家1的血量:%d,玩家2的血量:%d\n", hp1, hp2);
system("pause");
}