C语言完成简单的循环“打怪”小游戏

源码如下:

#include <stdio.h>

#include <time.h>

#include <stdlib.h>

#include <windows.h>

int main()

{

//以时间为种子,产生不一样的随机数

    srand((unsigned) time(NULL));

//printf("随机数字是%d\n",rand());

int hp1=100,hp2=100; //设定初始的血量为100

int att1,att2; //定义两个整形变量作为攻击力

int i=1; //设定执行的次数

while(hp1>0 && hp2>0) //双方的生命值要大于0才能进行

{

att1=rand() % 11 + 5; //产生5-15之间的一个随机攻击力(rand产生随机数,取模%11为0-10之间,然后两边同时+5则为5-15之间,(b-a+1)+5)

att2=rand() % 11 + 5;

//1P先攻击

hp2-=att1;

//2P攻击

hp1-=att2;

//判断谁的血量少于零则游戏结束

if (hp1<0)

{

printf("玩家1的第%d轮攻击力是%d.\t玩家2的剩余血量是%d.\t\n",i,att1,hp2);

printf("玩家2的第%d轮攻击力是%d.\t玩家1的剩余血量是%d.\t\n",i,att2,hp1);

printf("<<<<<<<<<<<游戏结束~~~!hp2获胜!!他的剩余血量是%d>>>>>>>\n",hp2);

break;

}

else if (hp2<0)

{

printf("玩家1的第%d轮攻击力是%d.\t玩家2的剩余血量是%d.\t\n",i,att1,hp2);

printf("玩家2的第%d轮攻击力是%d.\t玩家1的剩余血量是%d.\t\n",i,att2,hp1);

printf("<<<<<<<<<<<游戏结束~~~!hp1获胜!!他的剩余血量是%d>>>>>>>\n",hp1);

break;

}

if (hp1==0 && hp2==0)

{

printf("<<<<<<<<<<<游戏结束~~~!双方战平!!>>>>>>>\n");

break;

}

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

printf("当前是第%d轮\n",i);

printf("玩家1的第%d轮攻击力是%d.\t玩家2的剩余血量是%d.\t\n",i,att1,hp2);

printf("玩家2的第%d轮攻击力是%d.\t玩家1的剩余血量是%d.\t\n",i,att2,hp1);

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

Sleep(500);

i++;

}

return0;

效果截图:


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容