//必须叫征程,必须创建链接
#include<stdlib.h>
#include<stdio.h>
#include<time.h> //suiji
#include<string.h>
#include<windows.h> //SLEEP函数
#include <iostream>
#include <fstream>
using namespace std;
struct Player //玩家结构体,并初始化player
{
char name[21];
int attack;
int defense;
int health;
long int max_health;
int level;
int exp;
int range_exp;
long int max_exp;
}player={"勇者",100,40,100,100,1,0,0,100};
bool key=false,getmission=false,tee=false,baoshi=false,map=false;
int du;
int hold=0,wear=0;
struct Enemy //怪的结构体,并初始化各种怪
{
char name[20];
char wupin[12];
int attack;
int defense;
int health;
int money;
long int exp;
int wupin_sign;
int wupinpro;
int double_attack;
int miss;
}strongman={"污染的野狼","狼牙棒",80,100,700,400,200,13,20,1,0},
witch={"污染的象龟","龟甲",50,30,100,100,100,14,20,1,1},
xiyi={"污染的灰兔","\0",36,20,100,60,70,0,3,20,2},
big_strongman={"狼王","钢牙",80*5,100*5,700*5,400*5,200*5,16,40,2,0},
lion={"海底鲨鱼","\0",120,60,560,400,200,0,20,1,0},
horse={"海底食人鱼","\0",56,24,180,100,100,0,20,1,1},
bee={"海底水母","\0",34,22,120,60,70,0,30,2,2},
shitu={"水怪","宝石",120*8,60*8,560*8,400*8,200*8,17,10,1,0},
mouse={"魔王守卫","\0",200,60,500,400,300,0,20,1,0},
protecter={"魔王","陈旧的剑",1600,600,5600,4000,2200,18,10,1,0},
guai={"\0","\0",0,0,0,0,0,0,0,0,0};
struct Place
{
int bar,hotel,forest1,forest2,forest3,grass1,grass2,grass3,dilao1,dilao2,shop,tjp;
}place={1,2,3,4,5,6,7,8,9,10,11,12};int max_exp=0;
int choose_number=0,s=0,strongman_arm=0,battle=0,money=500,place_sign=9;
int cao=3,jijiubao=2,baiyao=2,superbaiyao=1,boom=3,dubiao=2,atom_boom=1;
int fang=0,fang1=10,fang1n=0,fang2=20,fang2n=0,fang3=40,fang3n=0,fang4=100,fang4n=0,fang5=120,fang5n=0;
int gong=0,gong1=8,gong1n=0,gong2=15,gong2n=0,gong3=25,gong3n=0,gong4=60,gong4n=0,gong5=100,gong5n=0,gong6=120,gong6n=0;
char gongname[20]="无",fangname[20]="无";
char proof;void AddWupin(int);
int AttackResult();
void BattleAct();
void ChooseWupin();
void DisplayState();
void OrdinaryAct();
int SuiJi();
int SuiJi100();
void WhetherLevelUp();
void SlowDisplay(char *);
ifstream fin;
ofstream fout;int main()
{
fin.open("chapter2",ios::in);
char canplay;
fin>>canplay;
if(canplay==0)
{
SlowDisplay("第一章未通关,无法解锁第二章");
getchar();
getchar();
exit(0);
}
fin.close();
fin.open("battle.dat",ios::in);
fin>>player.attack>>player.defense>>player.exp>>player.health>>player.level>>player.max_exp>>player.max_health>>player.name>>player.range_exp;
fin>>fang>>gong>>hold>>wear>>gongname>>fangname;
fin>>fang1n;
fin>>fang1;
fin>>fang2n;
fin>>fang2;
fin>>fang3n;
fin>>fang3;
fin>>fang4n;
fin>>fang4;
fin>>gong1n;
fin>>gong1;
fin>>gong2n;
fin>>gong2;
fin>>gong3n;
fin>>gong3;
fin>>gong4n;
fin>>gong4;
fin>>gong5n;
fin>>gong5;
fin>>strongman_arm>>key;
fin>>atom_boom>>baiyao>>boom>>cao>>dubiao>>jijiubao>>superbaiyao;
fin>>money;
fin>>getmission>>tee>>baoshi>>map;
int i=0,j=0,k=0;
char player_name[21];
SlowDisplay("你带上了公主,开启了扫除邪气之旅。");
getchar();OrdinaryAct();
return 0;
}int SuiJi()
{
srand((unsigned)time(NULL));
return rand()%10;
}int SuiJi100()
{
srand((unsigned)time(NULL));
return rand()%100;
}void ChooseWupin() //选择物品 并使用
{
printf("物品: 1,止血草%d个 2,急救包%d个 3,云南白药%d个 4,超级云南白药%d个 5,手雷%d个 6,毒标%d个 7,手抛式原子弹%d个 0,返回\n\n\n",cao,jijiubao,baiyao,superbaiyao,boom,dubiao,atom_boom);
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
if(cao>0)
{
SlowDisplay("使用止血草,HP增加60\n\n\n");
if(player.health+60>player.max_health)player.health=player.max_health;
else player.health+=60;
cao--;
}
else SlowDisplay("没有止血草了\n\n\n");
break;
case 2:
if(jijiubao>0)
{
SlowDisplay("使用急救包,HP增加80\n\n\n");
if(player.health+80>player.max_health)player.health=player.max_health;
else player.health+=80;
jijiubao--;
}
else SlowDisplay("没有急救包了\n\n\n");
break;
case 3:
if(baiyao>0)
{
SlowDisplay("使用云南白药,HP增加120\n\n\n");
if(player.health+120>player.max_health)player.health=player.max_health;
else player.health+=120;
baiyao--;
}
else SlowDisplay("没有云南白药了\n\n\n");
break;
case 4:
if(superbaiyao>0)
{
SlowDisplay("使用超级云南白药,HP增加200\n\n\n");
if(player.health+200>player.max_health)player.health=player.max_health;
else player.health+=200;
superbaiyao--;
}
else SlowDisplay("没有超级云南白药了\n\n\n");
break;
case 5:
if(battle) //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
{
if(boom>0)
{
SlowDisplay("使用手雷,敌人HP减少100\n\n\n");
guai.health-=100;
boom--;
AttackResult();
}
}
else SlowDisplay("非战斗状态,不能使用手雷!\n\n\n");
break;
case 6:
if(battle) //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
{
if(dubiao>0)
{
SlowDisplay("使用毒标,敌人HP减少200 敌人中毒! 每回合HP减少150\n\n\n");
guai.health-=200;
dubiao--;
du+=150;
AttackResult();
}
}
else SlowDisplay("非战斗状态,不能使用毒标!\n\n\n");
break;
case 7:
if(battle) //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
{
if(atom_boom>0)
{
SlowDisplay("使用手抛式原子弹,敌人HP减少500 放射性!敌人每回合HP减少200\n\n\n");
guai.health-=500;
atom_boom--;
du+=200;
AttackResult();
}
}
else SlowDisplay("非战斗状态,不能使用手抛式原子弹!\n\n\n");
break;
case 0:break;
default:printf("ChooseWupin error!\n\n\n");
}
}
int AttackResult() //攻击结果:判断是否获胜 是否获得物品 和 是否升级
{
if(guai.health<=0)
{
du=0;
battle=0;
printf("战斗胜利!获得金币%d,经验%d\n\n\n",guai.money,guai.exp);
player.exp+=guai.exp;
player.range_exp+=guai.exp;
money+=guai.money;
s=-10;
if(s<guai.wupinpro)
{
if(strcmp(guai.name,"魔王")==0) {SlowDisplay("缓缓地,魔王变为了人。\"这把金龙剑,只有在斩杀金龙之后才会生效,我为了寻找金龙,最终走火入魔…请你帮我斩杀金龙…\"");
SlowDisplay("第二章 《征程》结束 第三章《寻找金龙》解锁");
fout.open("chapter3",ios::out);
fout<<" "<<1;
fout.close();
fout.open("battle.dat",ios::out);
fout<<" "<<player.attack<<" "<<player.defense<<" "<<player.exp<<" "<<player.health<<" "<<player.level<<" "<<player.max_exp<<" "<<player.max_health<<" "<<player.name<<" "<<player.range_exp;
fout<<" "<<fang<<" "<<gong<<" "<<hold<<" "<<wear<<" "<<gongname<<" "<<fangname;
fout<<" "<<fang1n;
fout<<" "<<fang1;
fout<<" "<<fang2n;
fout<<" "<<fang2;
fout<<" "<<fang3n;
fout<<" "<<fang3;
fout<<" "<<fang4n;
fout<<" "<<fang4;
fout<<" "<<gong1n;
fout<<" "<<gong1;
fout<<" "<<gong2n;
fout<<" "<<gong2;
fout<<" "<<gong3n;
fout<<" "<<gong3;
fout<<" "<<gong4n;
fout<<" "<<gong4;
fout<<" "<<gong5n;
fout<<" "<<gong5;
fout<<" "<<strongman_arm<<" "<<key;
fout<<" "<<atom_boom<<" "<<baiyao<<" "<<boom<<" "<<cao<<" "<<dubiao<<" "<<jijiubao<<" "<<superbaiyao;
fout<<" "<<money;
fout<<" "<<getmission<<" "<<tee<<" "<<baoshi<<" "<<map; getchar();
getchar();exit(0);
}
SlowDisplay("从敌人尸骸中发现");
printf("%s\n\n\n",guai.wupin);
AddWupin(guai.wupin_sign);
}
WhetherLevelUp();
if(strcmp(guai.name,"魔王")==0)
{
puts("战斗胜利!!!");
}
return 1; //攻击有结果了返回1,否则返回0,用于判断是否继续做战斗行为
}
else
{
int s=SuiJi();if((guai.attack+s-(player.defense+fang)/3)<0)
{
player.health-=1;
printf("%s反击,你的HP减少了 1\n\n",guai.name);
}
else
{
player.health-=guai.attack+s-(player.defense+fang)/3;
printf("%s反击,你的HP减少了%d\n\n",guai.name,guai.attack+s-(player.defense+fang)/3);
}
if(player.health>=player.max_health/2) system("color 07");
if(player.health<player.max_health/2) system("color 0e");
if(player.health<player.max_health/3) system("color 06");
if(player.health<player.max_health/4) system("color 0c");
if(player.health<player.max_health/6) system("color 04");
if(player.health<0)
{
du=0;
battle=0;
printf("%s战死!",player.name);
if(money>=player.level*100) printf("使用%d金币贿赂裁判,复活!\n\n\n",player.level*100);
else
{
printf("你穷到死都死不起了!裁判看你没钱,嫌你可怜,就把你的少的可怜的钱全收了");
money=0;
}
money-=player.level*500;
player.health=player.max_health/5;
OrdinaryAct();//
return 1;
}
}
return 0;
}
void AddWupin(int wupin_sign)
{switch(wupin_sign)
{
case 13:gong6n++;break;
case 14:fang5n++;break;
case 16:tee++;break;
case 17:baoshi++;break;
default:printf("AddWupin error\n\n\n");
}}
void WhetherLevelUp()
{
int i=0,j=0;
int l1=player.range_exp/100;
int l2=player.range_exp/300;
int l3=player.range_exp/600;
if(player.level<=15&&l1>0) //15级以下,经验足够 都满足则升级
{
if(l1==1)
{
printf("%s",player.name);
SlowDisplay(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100;
system("color 07");
}
else
{
printf("好厉害!连升%d级!",l1);
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l1,2*l1,20*l1);
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l1;
player.defense+=2*l1;
player.max_health+=20*l1;
player.health=player.max_health;
player.level+=l1;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100*l1;
system("color 07");
}
}
else if(player.level<=40&&l2>0)
{
if(l2==1)
{
printf("%s",player.name);
SlowDisplay(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300;
system("color 07");
}
else
{
printf("好厉害!连升%d级!",l1);
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l2,2*l2,20*l2);
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l2;
player.defense+=2*l2;
player.max_health+=20*l2;
player.health=player.max_health;
player.level+=l2;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300*l2;
system("color 07");
}
}
else if(l3>0)
{
if(l3==1)
{
printf("%s",player.name);
SlowDisplay(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600;
system("color 07");
}
else
{
printf("好厉害!连升%d级!",l1);
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l3,2*l3,20*l3);
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l3;
player.defense+=2*l3;
player.max_health+=20*l3;
player.health=player.max_health;
player.level+=l3;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600*l3;
system("color 07");
}
}
}
void OrdinaryAct() //正常行为菜单(移动,物品,对话,查看状态,装备,退出游戏)
{while(1)
{
// \(1000);
// system("cls");puts("=============================================================================");
printf("要做什么?\n\n\n 1,移动 2,道具 3,对话 4,查看状态 5,装备 0,退出游戏\n\n\n");
puts("=============================================================================");
switch(scanf("%d",&choose_number),choose_number)
{
case 1: //显示移动菜单
SlowDisplay("要去哪里?\n\n\n");
printf("1,酒吧 2,旅馆 3,森林一层 4,森林二层 5,森林三层 6,海底一层 7,海底二层 8,海底三层 9,迷宫一层 10,迷宫二层 11,商店 12,铁匠铺\n\n\n");
switch(scanf("%d",&choose_number),choose_number)
{
case 12:
SlowDisplay("1,锻造 2,售卖");
int choise;
scanf("%d",&choise);
switch(choise)
{
case 1:
SlowDisplay("选择锻造装备:");
printf("攻装: 1,匕首:%d个 2,长剑:%d个 3,碧血剑:%d个 4,绝世好剑:%d个 5,大宝剑\n\n\n",gong1n,gong2n,gong3n,gong4n,gong5n);
printf("防装: 6,布衣:%d个 7,铁甲:%d个 8,银甲:%d个 9,黄金圣衣:%d个\t\t0,返回\n\n\n",fang1n,fang2n,fang3n,fang4n);
printf("选择要锻造的武器或防具以及锻造次数:(30个金币/次) 你有%d个\n\n\n",money);
int cishu;
scanf("%d%d",&choose_number,&cishu);
if(money<30*cishu) {printf("你没钱瞎嘚瑟啥!");break;}
money-=30*cishu;
switch(choose_number)
{
case 1:if(gong1n>=1)
{
SlowDisplay("锻造了匕首\n\n\n");
gong1+=1*cishu;
if(hold==1) gong+=1*cishu;
strcpy(gongname,"匕首");
}
else SlowDisplay("你没有匕首可以锻造\n\n\n");
break;
case 2:if(gong2n>=1)
{
SlowDisplay("锻造了长剑\n\n\n");
gong2+=3*cishu;
if(hold==2) gong+=3*cishu;
strcpy(gongname,"长剑");
}
else SlowDisplay("你没有长剑可以锻造\n\n\n");
break;
case 3:if(gong3n>=1)
{
SlowDisplay("锻造了碧血剑\n\n\n");
gong3+=5*cishu;
if(hold==3) gong+=5*cishu;
strcpy(gongname,"碧血剑");
}
else SlowDisplay("你没有碧血剑可以锻造\n\n\n");
break;
case 4:if(gong4n>=1)
{
SlowDisplay("锻造了绝世好剑\n\n\n");
gong4+=10*cishu;
if(hold==4) gong+=10*cishu;
strcpy(gongname,"绝世好剑");
}
else SlowDisplay("你没有绝世好剑可以锻造\n\n\n");
break;
case 6:if(fang1n>=1)
{
SlowDisplay("锻造了布衣\n\n\n");
fang1+=2*cishu;
if(wear==1) fang+=2*cishu;
strcpy(fangname,"布衣");
}
else SlowDisplay("你没有布衣可以锻造\n\n\n");
break;
case 7:if(fang2>=1)
{
SlowDisplay("锻造了铁甲\n\n\n");
fang2+=4*cishu;
if(wear==2) fang+=4*cishu;strcpy(fangname,"铁甲");
}
else SlowDisplay("你没有铁甲可以锻造\n\n\n");
break;
case 8:if(fang3n>=1)
{
SlowDisplay("锻造了银甲\n\n\n");
fang3+=8*cishu;
if(wear==3) fang+=8*cishu;strcpy(fangname,"银甲");
}
else SlowDisplay("你没有银甲可以锻造\n\n\n");
break;
case 9:if(fang4n>=1)
{
SlowDisplay("锻造了黄金圣衣\n\n\n");
fang4+=15*cishu;
if(wear==4) fang+=15*cishu;strcpy(fangname,"黄金圣衣");
}
else SlowDisplay("你没有黄金圣衣可以锻造\n\n\n");
break;
case 0:{SlowDisplay("未锻造\n\n\n");money+=30*cishu;break;}
case 5:if(gong5n>=1)
{
SlowDisplay("锻造了大宝剑\n\n\n");
gong5+=15*cishu;
if(hold==5) gong+=15*cishu;
strcpy(gongname,"大宝剑");
}
default:{printf("change error!");money+=30;}
}
case 2:
SlowDisplay("1:匕首 10$ 2:长剑 30$ 3:碧血剑 50$ 4:绝世好剑 80$ 5:大宝剑 120$ 6:布衣 5$ 7:铁甲 15$ 8:银甲 35$ 9:黄金圣衣 60$");
scanf("%d",&choose_number);
switch(choose_number)
{
case 1:if(gong1n>=1)
{
SlowDisplay("出售了匕首\n\n\n");
gong1n--;
money+=10;
}
else SlowDisplay("你没有匕首可以出售\n\n\n");
break;
case 2:if(gong2n>=1)
{
SlowDisplay("出售了长剑\n\n\n");
gong2n--;
money+=30;}
else SlowDisplay("你没有长剑可以出售\n\n\n");
break;
case 3:if(gong3n>=1)
{
SlowDisplay("出售了碧血剑\n\n\n");
gong3n--;
money+=50;}
else SlowDisplay("你没有碧血剑可以出售\n\n\n");
break;
case 4:if(gong4n>=1)
{
SlowDisplay("出售了绝世好剑\n\n\n");
gong4n--;
money+=80;}
else SlowDisplay("你没有绝世好剑可以出售\n\n\n");
break;
case 6:if(fang1n>=1)
{
SlowDisplay("出售了布衣\n\n\n");
fang1n--;
money+=5;}
else SlowDisplay("你没有布衣可以出售\n\n\n");
break;
case 7:if(fang2>=1)
{
SlowDisplay("出售了铁甲\n\n\n");
fang2n--;
money+=15;}
else SlowDisplay("你没有铁甲可以出售\n\n\n");
break;
case 8:if(fang3n>=1)
{
SlowDisplay("出售了银甲\n\n\n");
fang3n--;
money+=35;}
else SlowDisplay("你没有银甲可以出售\n\n\n");
break;
case 9:if(fang4n>=1)
{
SlowDisplay("出售了黄金圣衣\n\n\n");
fang4n--;
money+=60;}
else SlowDisplay("你没有黄金圣衣可以出售\n\n\n");
break;
case 0:{SlowDisplay("未出售\n\n\n");money+=30*cishu;break;}
case 5:if(gong5n>=1)
{
SlowDisplay("出售了大宝剑\n\n\n");
gong5n--;
money+=120;
}}
}
break;case 11:
{
printf("1、止血草:80\n2、急救包:115\n3、云南白药:135\n4、超级云南白药:200\n5、手雷:100\n6、毒镖:190\n7、手抛式原子弹:450\n0、退出 你有%d$",money);
int buy;
scanf("%d",&buy);
switch(buy)
{
case 0:break;
case 1:
if(money>=80)
{
money-=80;
cao++;
SlowDisplay("交易成功!");
}
else {SlowDisplay("由于你买不起,你穷到肌肉萎缩!攻击力清零");
player.attack=0;}
break;
case 2:
if(money>=115)
{
money-=115;
jijiubao++;
SlowDisplay("交易成功!");
}
else {SlowDisplay("由于你买不起,你穷到肌肉萎缩!攻击力清零");
player.attack=0;}
break;
case 3:
if(money>=135)
{
money-=135;
baiyao++;
SlowDisplay("交易成功!");
}
else {SlowDisplay("由于你买不起,你穷到肌肉萎缩!攻击力清零");
player.attack=0;}
break;
case 4:
if(money>=200)
{
money-=200;
superbaiyao++;
SlowDisplay("交易成功!");
}
else {SlowDisplay("由于你买不起,你穷到肌肉萎缩!攻击力清零");
player.attack=0;}
break;
case 5:
if(money>=100)
{
money-=100;
boom++;
SlowDisplay("交易成功!");
}
else {SlowDisplay("由于你买不起,你穷到肌肉萎缩!攻击力清零");
player.attack=0;}
break;
case 6:
if(money>=190)
{
money-=190;
dubiao++;
SlowDisplay("交易成功!");
}
else {SlowDisplay("由于你买不起,你穷到肌肉萎缩!攻击力清零");
player.attack=0;}
break;
case 7:
if(money>=450)
{
money-=450;
atom_boom++;
SlowDisplay("交易成功!");
}
else {SlowDisplay("由于你买不起,你穷到肌肉萎缩!攻击力清零");
player.attack=0;}
break;
}
}
case 1:place_sign=place.bar; //记录目前位置-酒吧
// OrdinaryAct();
break;
case 2:place_sign=place.hotel; //进入旅店
SlowDisplay("要住店吗? 200个金币 1,是 0,否\n\n\n");
choose_number=1;
switch(scanf("%d",&choose_number),choose_number)
{
case 1:if(money-200<0) //判断钱是否够
{
SlowDisplay("Sorry,你的钱不够~\n\n\n");
}
else
{
SlowDisplay("好好休息\n\tHP满\n\t\t第二天了\n\n");
money-=200; //花费200住店费
player.health=player.max_health; //体力满
}
break;
case 0:SlowDisplay("下次再来!\n\n\n");break;
default:printf("hotel talk error!\n\n\n");
}
place_sign=0;
break;
case 3:
place_sign=place.forest1;
s=SuiJi();
if(s<7)
{
battle=1;
guai=xiyi;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
SlowDisplay("这里安全\n\n\n");
//不用调用OAct函数,会自动执行OAct函数;
}
break;
case 4:
place_sign=place.forest2;
s=SuiJi();
if(s<7)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
battle=1;
guai=strongman;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
SlowDisplay("这里安全\n\n\n");
}
break;
case 5:
place_sign=place.forest3;
s=SuiJi();
if(s<7)
{
battle=1;
guai=strongman;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
battle=1;
guai=big_strongman;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
SlowDisplay("这里安全\n\n\n");
}
break;
case 6:
place_sign=place.grass1;
s=SuiJi();
if(s<7)
{
battle=1;
guai=bee;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
SlowDisplay("这里安全\n\n\n");
}
break;
case 7:
place_sign=place.grass2;
s=SuiJi();
if(s<7)
{
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
battle=1;
guai=lion;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
SlowDisplay("这里安全\n\n\n");
}
break;
case 8:
place_sign=place.grass3;
s=SuiJi();
if(s<7)
{
battle=1;
guai=lion;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
guai=shitu;
printf("%s扑了过来!\n\n\n",guai.name);battle=1;
BattleAct();
}
else
{
SlowDisplay("这里安全\n\n\n");
}
break;
case 9:
if(!map) {printf("你没有地图,贸然进入这里很危险");break;}
if(SuiJi()<9) {battle=1;
guai=mouse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();}
else cout<<"这里安全";
break;case 10:
if(!map) {printf("你没有地图,贸然进入这里很危险");break;}
battle=1;
SlowDisplay("魔王:啊啊啊啊啊!");
guai=protecter;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
break;default:printf("choose map error!\n\n\n");
}
break;
case 2: ChooseWupin();break; //显示道具,并可以使用.
case 3: //对话选项
if(place_sign==place.bar)
{
SlowDisplay("要和谁说话?\n\n\n1,红发女郎 2,赏金猎人 3,酒吧老板 4,你自己\n\n\n"); //显示对话人物
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
if(!getmission)
{
SlowDisplay("红发女郎:\n\n\n 你说魔王啊,我知道他在哪,但是你要满足两个条件:\n");
SlowDisplay("首先,我要 狼王 的钢牙~ 赏金猎人最喜欢了~ 还有,上次水怪叼走了我的宝石,你也要帮我拿回来~ 都拿回来后我还会给你5000$酬谢~\n");
printf("%s:",player.name);
getmission=true;
SlowDisplay("事真多啊!");
}
else if(tee&&baoshi) {SlowDisplay("红发女郎:他在迷宫里,这是地图和你的5000$。\n");map=true;money+=5000;}
else if(tee||baoshi) {SlowDisplay("红发女郎:加油!");};
break;
case 2:
SlowDisplay("赏金猎人:\n\n\n 加油吧,年轻人!\n\n\n 不要被外面丛林和草原所吓倒!\n\n\n");
break;
case 3:
printf("要喝点什么?\n\n\n 1,二锅头25金币 HP+20 2,XO酒80金币 HP+50 3,人头马面150金币 HP+100 0,返回\n\n\n");
choose_number=1;
while(choose_number)
{
switch(scanf("%d",&choose_number),choose_number)
{
case 1:if(money<25)
{
SlowDisplay("钱不够!");
}
else
{
if(player.health+20<=player.max_health)
{
SlowDisplay("HP+20.");
money-=25;
player.health+=20;
}
else
{
SlowDisplay("HP满了");
player.health=player.max_health;
}
}
break;
case 2:if(money<80)
{
SlowDisplay("钱不够!");
}
else
{
if(player.health+50<=player.max_health)
{
SlowDisplay("HP+50.");
money-=80;
player.health+=50;
}
else
{
SlowDisplay("HP满了");
player.health=player.max_health;
}
}
break;
case 3:if(money<150)
{
SlowDisplay("钱不够!");
}
else
{
if(player.health+100<=player.max_health)
{
SlowDisplay("HP+100.");
money-=150;
player.health+=100;
}
else
{
SlowDisplay("HP满了");
player.health=player.max_health;
}
}
break;
case 0:SlowDisplay("下次在来!\n");break;
default:SlowDisplay("输入错误\n\n\n");
}
}
break;
case 4:
char word[200];
cin>>word;
if(word[0]=='$'&&word[1]=='+') {int add;cin>>add;money+=add;}
}
}
else if(place_sign==place.hotel)
SlowDisplay("“老板娘!我...”\n\n\n“我忙着呢,没空理你~”\n\n\n");
else SlowDisplay("这里好像没人可以聊天\n\n\n");
break;
case 4: DisplayState(); break; //显示状态
case 5: //装备
printf("攻装: 1,匕首:%d个 2,长剑:%d个 3,碧血剑:%d个 4,绝世好剑:%d个 5,大宝剑:%d个 \n\n\n",gong1n,gong2n,gong3n,gong4n,gong5n);
printf("防装: 6,布衣:%d个 7,铁甲:%d个 8,银甲:%d个 9,黄金圣衣:%d个\t\t0,返回\n\n\n",fang1n,fang2n,fang3n,fang4n);
SlowDisplay("选择要装备的武器或防具:\n\n\n");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:if(gong1n>=1)
{
SlowDisplay("拿起了匕首\n\n\n");
gong=gong1;
hold=1;
strcpy(gongname,"匕首");
}
else SlowDisplay("你没有匕首可以装备\n\n\n");
break;
case 2:if(gong2n>=1)
{
SlowDisplay("拿起了长剑\n\n\n");
gong=gong2;
hold=2;
strcpy(gongname,"长剑");
}
else SlowDisplay("你没有长剑可以装备\n\n\n");
break;
case 3:if(gong3n>=1)
{
SlowDisplay("拿起了碧血剑\n\n\n");
gong=gong3;
hold=3;
strcpy(gongname,"碧血剑");
}
else SlowDisplay("你没有碧血剑可以装备\n\n\n");
break;
case 4:if(gong4n>=1)
{
SlowDisplay("拿起了绝世好剑\n\n\n");
gong=gong4;
hold=4;
strcpy(gongname,"绝世好剑");
}
else SlowDisplay("你没有绝世好剑可以装备\n\n\n");
break;
case 6:if(fang1n>=1)
{
SlowDisplay("穿上了布衣\n\n\n");
fang=fang1;
wear=1;
strcpy(fangname,"布衣");
}
else SlowDisplay("你没有布衣可以装备\n\n\n");
break;
case 7:if(fang2>=1)
{
SlowDisplay("穿上了铁甲\n\n\n");
fang=fang2;
wear=2;
strcpy(fangname,"铁甲");
}
else SlowDisplay("你没有铁甲可以装备\n\n\n");
break;
case 8:if(fang3n>=1)
{
SlowDisplay("穿上了银甲\n\n\n");
fang=fang3;
wear=3;
strcpy(fangname,"银甲");
}
else SlowDisplay("你没有银甲可以装备\n\n\n");
break;
case 9:if(fang4n>=1)
{
SlowDisplay("穿上了黄金圣衣\n\n\n");
fang=fang4;
wear=4;
strcpy(fangname,"黄金圣衣");
}
else SlowDisplay("你没有黄金圣衣可以装备\n\n\n");
break;
case 0:SlowDisplay("未更换装备\n\n\n");break;
case 5:if(gong5n>=1)
{
SlowDisplay("拿起了大宝剑\n\n\n");
gong=gong5;
hold=5;
strcpy(gongname,"大宝剑");
}
default:printf("change error!");
}
break;
case 0:
SlowDisplay("确定推出游戏?(Y/N)\n\n\n");
getchar();
proof=getchar();
if(proof=='y'||proof=='Y')
{
SlowDisplay("数据存储中...");
fout.open("battle.dat",ios::out);
fout<<" "<<player.attack<<" "<<player.defense<<" "<<player.exp<<" "<<player.health<<" "<<player.level<<" "<<player.max_exp<<" "<<player.max_health<<" "<<player.name<<" "<<player.range_exp;
fout<<" "<<fang<<" "<<gong<<" "<<hold<<" "<<wear<<" "<<gongname<<" "<<fangname;
fout<<" "<<fang1n;
fout<<" "<<fang1;
fout<<" "<<fang2n;
fout<<" "<<fang2;
fout<<" "<<fang3n;
fout<<" "<<fang3;
fout<<" "<<fang4n;
fout<<" "<<fang4;
fout<<" "<<gong1n;
fout<<" "<<gong1;
fout<<" "<<gong2n;
fout<<" "<<gong2;
fout<<" "<<gong3n;
fout<<" "<<gong3;
fout<<" "<<gong4n;
fout<<" "<<gong4;
fout<<" "<<gong5n;
fout<<" "<<gong5;
fout<<" "<<strongman_arm<<" "<<key;
fout<<" "<<atom_boom<<" "<<baiyao<<" "<<boom<<" "<<cao<<" "<<dubiao<<" "<<jijiubao<<" "<<superbaiyao;
fout<<" "<<money;
fout<<" "<<getmission<<" "<<tee<<" "<<baoshi<<" "<<map;
//向文件中更新数据;
getchar();
SlowDisplay("按回车退出");
getchar();
return;
}
else if(proof=='n'||proof=='N')printf("继续游戏!\n\n\n");
else SlowDisplay("继续!\n\n\n");
break;
default:SlowDisplay("输入错误!\n\n\n");
}
}
}
void DisplayState()
{
printf("%s 攻击力:%d+%d=%d 防御力:%d+%d=%d HP:%d/%d \n\n\n",player.name,player.attack,gong,player.attack+gong,player.defense,fang,player.defense+fang,player.health,player.max_health);
printf("武器: %s 防具: %s \n\n\n",gongname,fangname);
printf("等级:%d 经验:%d/%d 还需要%d经验升级 金币:%d \n\n\n",player.level,player.exp,player.max_exp,player.max_exp-player.exp,money);
}
void BattleAct()
{
while(1)
{
puts("=============================================================================");
if(du>0) printf("敌人中毒!HP-%d 剩余%d",du,guai.health);
guai.health-=du;
printf("要怎么办?\n\n\n 1,攻击 2,物品 3,查看状态 4,逃跑\n\n\n");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
s=SuiJi();
printf("%s攻击! %sHP减少%d %s剩余血量:%d\n\n\n",player.name,guai.name,player.attack+s+gong-guai.defense/3,guai.name,guai.health-player.attack-s-gong+guai.defense/3);
guai.health-=player.attack+s+gong-guai.defense/3;
if(AttackResult())return; //如果攻击有结果(敌人或玩家战死)退出函数
else continue;
case 2: ChooseWupin();break; //选择物品,可以使用,战斗中允许使用攻击性物品
case 3:DisplayState();break; //显示状态
case 4:
s=SuiJi();
if(s<4) //40%的概率可以逃跑
{
printf("%s逃跑了~\n\n\n",player.name);
battle=0;
return;
}
else printf("%s逃跑失败!\n\n\n",player.name);
break;
default:SlowDisplay("输入错误,重新输入!\n\n\n");
}
}
}
void SlowDisplay(char *p)
{
while(1)
{
if(*p!=0)
printf("%c",*p++);
else
break;
Sleep(50);
}}NO.2#include<iostream>
#include<string>
#include<ctime>   //用clock()%100 求余,做随机数种子
using namespace std;  struct shuxing
{  string name;    //名字  double str; //力量  double dex;     //敏捷  double sudu;    //速度  double tizhi;   //体质
};  shuxing player; //声明全局变量角色,类型为结构
shuxing enemy[10] = { "史莱姆",3,3,3,5 };//声明全局变量 怪物,类型为结构数组  double hp[2];   //声明全局变量数组hp,hp[0]为玩家的,hp[1]为怪物的
int ski;    //ski决定玩家有什么技能
double def=1;   //def防御参数,和伤害数值相乘
string laji;    //用于吃掉没意义的输入  bool combat(int);   //guai为怪物编号
void playershuxing();   //玩家属性
void guaiwushuxing(int);    //怪物属性
int minjie(int);    //敏捷带来的倍击函数
int skill();    //技能函数,用于释放技能
void combatend(int,bool);  int main()
{  int guai = 0;  bool zhandou;  cout << "欢迎来到游戏世界——《LOL世界冒险》" << endl;  cout << "请先输入你的名字:";  getline(cin, player.name);  player.str = 5;  player.dex = 5;  player.sudu = 5;  player.tizhi = 5;  hp[0] = int(player.tizhi * 5);  //初始化属性  playershuxing();    //调用函数,查看用户属性  cout << "糟糕,你遇见了第一只怪物!" << endl;  hp[1] = int(enemy[guai].tizhi * 4); //给怪物进行初始化血量  guaiwushuxing(guai);    //显示怪物属性  zhandou =combat(guai);  //战斗,并输出战斗结果  combatend(guai, zhandou);   //输出战斗结算  //system("pause");  return 0;
}  void playershuxing()    //查看 玩家的 属性调用本函数
{  cout << "你好,---" << player.name << "---。你的属性为:" << endl;  cout << "力量(影响伤害):" << player.str << endl;  cout << "敏捷(触发倍击):" << player.dex << endl;  cout << "速度(影响攻速):" << player.sudu << endl;  cout << "体质(影响免伤):" << player.tizhi << endl;  cout << "最大生命值:" << player.tizhi * 5 << "(体质的5倍)" << endl;  if (hp[0] > player.tizhi * 5)hp[0] = player.tizhi * 5;  cout << "当前生命值:" << hp[0] << endl;  //system("pause");  cout << endl;
}  void guaiwushuxing(int guai)//查看 怪物 的属性调用本函数
{  cout << "当前怪物***" << enemy[guai].name << "***的属性为:" << endl;  cout << "力量(影响伤害):" << enemy[guai].str << endl;  cout << "敏捷(触发倍击):" << enemy[guai].dex << endl;  cout << "速度(影响攻速):" << enemy[guai].sudu << endl;  cout << "体质(影响免伤):" << enemy[guai].tizhi << endl;  cout << "最大生命值:" << enemy[guai].tizhi * 4 << "(体质的4倍)" << endl;  if (hp[1] >enemy[guai].tizhi * 4)hp[1] = player.tizhi * 4;  cout << "当前生命值:" << hp[1] << endl;  //system("pause");  cout << endl;
}  bool combat(int guai)
{  double lun = 1, V[2], v;    //lun回合数,V[2]数组(2成员,分别是玩家和怪物速度),v速度基数  char i,act; //i行动参数(1为怪物,0为玩家),act为行动参数  double minguai; //怪物攻击带来的参数  int dam;    //dam为伤害,每次实时计算  if (player.sudu < enemy[guai].sudu)   {   v = player.sudu;  }  else {  v = enemy[guai].sudu; } //双方速度低的,为速度基数  V[0] = V[1] = 0;  cout << "进入战斗。" << endl;  for (;hp[0] > 0 && hp[1] > 0;)    //血量都大于0,则执行战斗循环  {  cout << "*********** 这 *** 是 *** 新 *** 的 *** 回 *** 合 ***********" << endl;  cout << "现在是第--->>> " << lun << " <<<---回合。" << endl;  V[0] = V[0] + player.sudu;  V[1] = V[1] + enemy[guai].sudu; //回合开始,两人速度都增加  while (V[0] >= v || V[1] >= v)    //只要有一个人速度比速度基数高,就判断速度,速度高的出手  {  if (V[0] < V[1]) { i = 1; }  else { i = 0; } //根据行动快慢,决定谁先动  if (i == 0) //玩家行动轮  {  cout << "现在轮到你行动了!" << endl;  cout << "请决定你的动作:" << endl;  cout << "1.攻击\n2.防御\n3.使用技能\n你的动作是: ";  act = cin.get();  getline(cin,laji);  cout << endl;  if (act == '1') //攻击  {  dam = int(player.str*minjie(guai)*(player.str / enemy[guai].tizhi));  cout << "你对 " << enemy[guai].name << " 造成了 " << dam << " 点伤害。";  hp[1] = hp[1] - dam;  cout << "敌人还有 " << hp[1] << " 点生命值。" << endl << endl;  V[0] = V[0] - v;  }  else if (act == '2')    //防御  {  V[0] = 0;  def = 0.25;  cout << "你进行了防御,你的防御指数提高了!" << endl << endl;  }  else if (act == '3')    //使用技能  {  act=skill();  }  else { cout << "输入错误,请重新输入动作代码:"; }  }  if (i == 1) //怪物行动轮  {  cout << enemy[guai].name << "  进行攻击!" << endl;  minguai=minjie(guai);  if (0==minguai) { minguai = 3; }  else if (1 == minguai) { minguai = 1; }  else if (2 == minguai) { minguai = 1 / 2; }  else if (3 == minguai) { minguai = 1 / 3; }  dam = int(def*enemy[guai].str*minguai*(enemy[guai].str / player.tizhi));  hp[0] = hp[0] - dam;    //血量减少  cout << "你受到了 " << dam << " 点伤害。你当前血量为: " << hp[0] << endl << endl;  if(def<=1)def = def + 0.1;  V[1] = V[1] - v;  }  if (hp[0] <= 0 || hp[1] <= 0)break;  }  lun++;//当两人速度都小于速度基数时,回合数+1  def = 1;    //防御系数归1  }  if (hp[1] <= 0)  {  return 1;  }  else  {  return 0;  }
}  int skill()
{  if (ski == 0) { cout << "你并未学会技能,行动失败。" << endl;    return 4;}  }  int minjie(int guai)    //敏捷参数,用于计算伤害倍数
{  double a, b;  if (player.dex >= enemy[guai].dex * 2)return 3;  else if (player.dex >= enemy[guai].dex*1.5)return 2;  else if (player.dex >= enemy[guai].dex )  {  a = player.dex / enemy[guai].dex;   //取值范围1.5~1  b = clock() % 100 ; //在0~99之间随机一个数  a = (a * 100 - 100) * 2;  if (b <= a)return 2;  else return 1;  }  else  {  a= player.dex / enemy[guai].dex;    //取值范围1~0  a = a * 100;  b = clock() % 100;  //在1~100之间随机一个数  if (b <= a)return 1;  else return 0;  }
}  void combatend(int guai,bool a)
{  double heal;  if (a == true)  {  cout << "战斗结束........." ;  //system("pause");  //system("cls");  cout << "***" << enemy[guai].name << "***死亡!你胜利啦!" << endl;  if (hp[0] <= 0)hp[0] = 1;  cout << "你当前生命值为:" << hp[0] << "点。" << endl;  heal = int(player.tizhi * 2 + enemy[guai].tizhi * 1);  hp[0] = hp[0] + heal;  if (hp[0] >= player.tizhi * 5)hp[0] = player.tizhi * 5;  cout << "由于战斗胜利,你获得了 " << heal << " 点治疗,你当前生命值为   " << hp[0] << " 点。" << endl;  player.str = player.str + 1;  player.dex = player.dex + 1;  player.sudu = player.sudu + 1;  player.tizhi = player.tizhi + 1;  playershuxing();  }  else if (a == false)  {  cout << "战斗结束.........";  //system("pause");  //system("cls");  cout << "---" << player.name << "---可耻的失败了!" << endl;  cout << "你被一个大汉爆了菊花!" << endl;  cout << "你被两个基佬爆了菊花!" << endl;  cout << "你被三个人妖爆了菊花!" << endl;  cout << "你被送到泰国,然后做了切除jj手术!" << endl;  cout << "你被送进外国某个地下红灯区!" << endl;  cout << "————十八禁内容————" << endl;  cout << "真是惨不忍睹啊!" << endl;  cout << "创世神看不下去了,将你复活了" << endl;  player.tizhi = player.tizhi + 4;  heal = int(player.tizhi * 2 + enemy[guai].tizhi * 1);  hp[0] = 1;  hp[0] = hp[0] + heal;  if (hp[0] >= player.tizhi * 5)hp[0] = player.tizhi * 5;  cout << "创世神对你进行了治疗,你回复了 " << heal << " 点血量。" << endl;  cout << "你的当前血量为 " << hp[0] << " 点。" << endl;  cout << "由于沐浴了创世神的光辉,你的体质提高了 4 点。这说明你更抗揍了。" << endl;  playershuxing();  }
}  

让我编译一个程序(cpp)相关推荐

  1. 记录 Windows 下编译一个开源 SM9 签名验签 C 程序的过程

    注:本文不讨论算法具体实现细节,只介绍如何编译一个现有的程序实现. 在商用密码检测中心( 链接:http://www.scctc.org.cn/index.aspx )的网站上,"下载中心& ...

  2. linux如何编译wine,利用winelib编译一个可在linux下运行的程序

    利用winelib编译一个可在linux下运行的程序 只是想既可以使用linux的api,又可以使用windows的api #include #include #include #include in ...

  3. python源文件改写编写一个程序读取一个python源程序文件_学PYTHON第三节:编译和解释...

    计算机执行源程序的两种方式:编译和解释 首先,了解一下静态语言,动态语言,目标代码,源代码. 动态类型语言(又称为脚本语言或扩建语言):在运行期进行类型检查的语言,也就是在编写代码的时候可以不指定变量 ...

  4. 2012年9月14日部分反编译一个被混淆过的 .net 程序的笔记

    在前次反编译的基本上,昨晚花了几个小时的时间部分反编译一个被混淆过的 .net 程序.终于分析出了相关的代码,期间不停的访问MSDN网站现学现买.发现 .net 整个就是一开源软件,就算是混淆之后分析 ...

  5. 一个程序从编译到运行的全过程

    前言 一个程序,从编写完代码,到被计算机运行,总共需要经历以下四步: 编译.编译器会将程序源代码编译成汇编代码. 汇编.汇编器会将汇编代码文件翻译成为二进制的机器码. 链接.链接器会将一个个目标文件和 ...

  6. 编写一个程序btree.cpp, 实现二叉树基本运算

    (验证性实验)实现二叉树的各种基本运算的算法 编写一个程序btree.cpp, 实现二叉树基本运算,并在此基础上设计一个程序exp5-1.cpp,完成如下功能.由图所示的二叉树创建对应的二叉链存储结构 ...

  7. 关于idea编译时提示 : 另一个程序正在使用此文件,进程无法访问; 问题修复记录

    关于idea编译时提示 : 另一个程序正在使用此文件,进程无法访问. 问题修复记录 首先报错原文 : Error:Maven Resources Compiler: Failed to copy 'E ...

  8. 编译原理实验报告_任意给定一个正规式 r (包括连接、或、闭包运算),根据 Thompson算法设计一个程序,生成与该正规式等价的 NFA N 。

    任意给定一个正规式 r (包括连接.或.闭包运算),根据 Thompson算法设计一个程序,生成与该正规式等价的 NFA N . 百度网盘下载 传送门 提取码:bzjn

  9. 使用MS VS的命令来编译C++程序

    以前,我是在linux下使用命令或者makefile来编译C++程序的,最近需要在windows上做点测试.于是使用ms VS来作为开发工具,这种大揽全包的IDE确实好用:点一下菜单,编译结果就出来了 ...

最新文章

  1. 斯坦福CS520 | 知识图谱到底是什么?从各顶会看知识图谱定义
  2. php lumen auth,学习 Lumen 用户认证 (一)
  3. 聊聊并发(七)——Java中的阻塞队列
  4. Kotlin的基本数值类型问题:是对象?还是基本数据类型?
  5. Redis 基础、高级特性与性能调优 | 高薪必备
  6. QT5实现简单的TCP通信
  7. VisualSVN Server Manager创建版本库以及TortoiseSVN的使用
  8. VC++ 创建Windows服务
  9. Python rang()函数
  10. Linux统计目录下文件个数及代码行数
  11. 从零做网站开发:基于Flask和JQuery,实现表格管理平台
  12. 在华为云ECS上手工通过Docker部署tomcat
  13. win7电脑误删鼠标键盘驱动_Win7系统鼠标键盘驱动检测不到的三种解决方法
  14. UE4添加人物动画之前后左右移动
  15. python里面的return是什么意思_python中return是什么意思?
  16. c# cad二次开发图表绘制
  17. 《白话大数据和机器学习》学习笔记1
  18. html.ex.day02
  19. ABAP RFC远程调用
  20. DBeaver 操作数据库

热门文章

  1. Vue:uniapp实现NFC标签读取功能
  2. 怎么给WPS文字设置装订线
  3. 数学建模的论文写作问题
  4. 求生之路2 局域网联机教程
  5. 学计算机的男生喜欢什么样的女生,男生喜欢女生的九种表现 男生对女生说的甜蜜情话...
  6. 三相并网逆变器电流环解耦(更新版)
  7. 电脑突然无法播放html音频,大家快来哦:我的电脑不出声是怎么回事
  8. 计算同类相关系数(ICC)R
  9. 笔记本外接显示器显示“输入不支持”的问题解决记录
  10. 百度智能云成中国跳水队独家AI合作伙伴圆梦东京!