新人起步中(3/n)

使用if,while,时间随机完成题目:设定为2位玩家,每位玩家200点hp,每次攻击时随机造成7-17伤害,血量到0或以下为ko(个人想法)

个人最终版

#include <stdio.h>

#include <stdlib.h>
#include <time.h>
int main()
{
int cishu = 0;
int ashengyu = 200;
int shanghai;
int bshengyu = 200;
srand((unsigned) time(NULL));

while(bshengyu > 0 && ashengyu > 0){
if(cishu == 0)
{
shanghai = (rand() * 5) % 11 + 7;
bshengyu = bshengyu - shanghai;
printf("a玩家造成了%d的伤害,b剩下%d的血量\n",shanghai,bshengyu);
cishu++;
}
else
{
shanghai = (rand() * 5) % 11 + 7;
ashengyu = ashengyu - shanghai;
printf("b玩家造成了%d的伤害,a剩下%d的血量\n",shanghai,ashengyu);
cishu--;
}
}
if(ashengyu > 0)
{
printf("a玩家获胜");
}
else
{
printf("b玩家获胜");
}
return 0;
}

个人经历:

设定变量a剩余血量,b剩余血量,次数,伤害

公式设定随机伤害,由于直接shanghai = rand() % 11 + 7;为固定增长,所以改为shanghai = (rand() * 5) % 11 + 7;增加一定的不确定性

第一次想以复数if,内嵌while制作,中途中发现,复数if进入后,仅会重复while内容,无法重新重复if步骤后改为while内嵌复数if。

中途发现内嵌无需复数if,改为单次if,与循环外置if的想法为好。

错误次数:8次-10次

扫描二维码关注公众号,回复: 4558753 查看本文章

基础错误6次左右()

大错误(无用功)2次

猜你喜欢

转载自www.cnblogs.com/allsear/p/10139263.html