我在dev-c++里做一款小游戏
但每次运行完后,下一次的所有记录都会消失,我知道这是每次程序的初始化,但我不想这样,我想让每一次运行都能保存下来。
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int zcz_xz,hp=15,mony=500,ks=0,nx6=0,jf=0,gss[5],xxz=0,sds[6];
int kc(){
cout<<"开启软件中……"<<endl;
Sleep(500);
system("cls");
cout<<"< < = = 星 际 传 奇 = = > > 加载中……";
Sleep(500);
for(int i=1;i<=100;i+=5){
for(int j=1;j<=i/1.3;j++)cout<<".";
cout<<i<<"%"<<endl;system("cls");
}system("cls");
}
int OKkc_1(){cout<<"========================欢迎来到--星际传奇--11.0--========================"<<endl;}
int OKkc_2(){cout<<" 星际传奇中,我们将一同发展"<<endl<<endl;}
int zjm(int hp_z,int mony_z){
cout<<"生命值:"<<hp_z<<endl;
cout<<"总钱数:"<<mony_z<<endl;
cout<<"总积分:"<<jf<<endl;
cout<<"公司:"<<endl;
if(gss[1]==1)cout<<"A"<<endl;
if(gss[2]==1)cout<<"B"<<endl;
if(gss[3]==1)cout<<"C"<<endl;
if(gss[4]==1)cout<<"D"<<endl;
if(gss[5]==1)cout<<"E"<<endl;
}
int cjzc(){
cout<<"这里有一只怪物,你选择用什么武器?"<<endl;
cjzc_wqq:
cout<<"1.手雷--100¥ 2.粑粑枪--150¥ 3.加农炮--200¥ 4.结束"<<endl;
cjzc_wq:
int xz_1_cjzc;cin>>xz_1_cjzc;
if(xz_1_cjzc==1){
if(mony>=100){
mony-=100;cout<<"购买成功!发射!"<<endl;
if(hp%2==1){
cout<<"怪物成功击败!你获得了123¥"<<endl;mony+=123;hp+=1;jf++;
}else{
cout<<"失败了,你亏损了10元,扣了1滴血"<<endl;mony-=10;hp-=1;
}
}
else {cout<<"金钱不足"<<endl;goto cjzc_wqq;hp-=1;}
}
if(xz_1_cjzc==2){
if(mony>=150){
mony-=10;cout<<"购买成功!发射!"<<endl;
if(hp%2==1){
cout<<"怪物被臭的死了!你获得了156¥"<<endl;mony+=156;hp+=1;jf++;
}else{
cout<<"失败了,你亏损了10元,扣了1滴血"<<endl;mony-=10;hp-=1;
}
}
else {cout<<"金钱不足"<<endl;goto cjzc_wqq;hp-=1;}
}
if(xz_1_cjzc==3){
if(mony>=200){
mony-=10;cout<<"购买成功!发射!"<<endl;
if(hp%2==1){
cout<<"怪物被炸死了!你获得了345¥"<<endl;mony+=345;hp+=1;jf++;
}else{
cout<<"失败了,你亏损了10元,扣了1滴血"<<endl;mony-=10;hp-=1;
}
}
else {cout<<"金钱不足"<<endl;goto cjzc_wqq;hp-=1;}
}
if(xz_1_cjzc==4)goto s4;
s4:
nx6+=1;
}
int ck(int hp_ck,int mo_ck){
cout<<"开始采矿:"<<endl;
int my=mo_ck/hp_ck/10;
if(my%2==0){
if(my<=5){cout<<"你挖到了铁矿石,获得了23¥"<<endl;mony+=23;ks=1;jf++;}
if(my<=10&&my>=5){cout<<"你挖到了银矿石,获得了33¥"<<endl;mony+=33;ks=2;jf+=2;}
if(my<=20&&my>=10){cout<<"你挖到了钻石,获得了123¥"<<endl;mony+=123;ks=3;jf+=5;}
else {cout<<"你挖到了黄金,获得了55¥"<<endl;mony+=56;ks=4;jf+=4;}
}else{cout<<"矿洞发生坍塌,你损失了123¥"<<endl;mony-=123;hp-=5;}
nx6+=1;
}
int mm(int hp_m,int mo_m){
if(ks!=0){
cout<<"开始买卖:"<<endl;
cout<<"你开价多少卖你的矿石(开合理价)"<<endl;
int jg;cin>>jg;
if(ks==1){if(jg<=23){cout<<"成功买卖"<<endl;mony+=jg;jf++;}else{cout<<"价格太贵,客人把你铁矿石砸了!矿石废了!钱亏了"<<endl;mony-=jg;}}
if(ks==2){if(jg<=33){cout<<"成功买卖"<<endl;mony+=jg;jf++;}else{cout<<"价格太贵,客人把你银矿石砸了!矿石废了!钱亏了"<<endl;mony-=jg;}}
if(ks==3){if(jg<=123){cout<<"成功买卖"<<endl;mony+=jg;jf++;}else{cout<<"价格太贵,客人把你钻石砸了!矿石废了!钱亏了"<<endl;mony-=jg;}}
if(ks==4){if(jg<=55){cout<<"成功买卖"<<endl;mony+=jg;jf++;}else{cout<<"价格太贵,客人把你黄金砸了!矿石废了!钱亏了"<<endl;mony-=jg;}}
}else{cout<<"你没矿石买卖,请先挖矿"<<endl; }ks=0;
nx6+=1;
}
int gmsm(int hp_gm,int mo_gm){
cout<<"欢迎进店!"<<endl;
hps:
cout<<"你现在有"<<hp_gm<<"滴血,你要买几滴?(1滴55¥)你现在有"<<mo_gm<<"¥(12345退出店铺)"<<endl;
int hp_s,moni;cin>>hp_s;
if(hp_s==12345)goto s3;
moni=hp_s*55;
if(mo_gm>=moni){cout<<"购买成功!"<<endl;hp+=hp_s;mony-=moni;jf++;}
else {cout<<"钱不够"<<endl;goto hps;}
s3:
nx6+=1;
}
int cp(){
cout<<"欢迎来买彩票:"<<endl;
cout<<"10¥一张"<<endl;mony-=10;
cout<<"1-1000选一个数:"<<endl;
int xs;cin>>xs;
int zs=rand()%1000+1;
if(zs==xs){cout<<"你中大奖了---100w元"<<endl;mony+=100000;jf+=100;}
if(xs>=zs-5&&zs!=xs&&xs<=zs+5){cout<<"你中小奖了---1w元"<<endl;mony+=10000;jf+=10;goto gn;}
if(xs>=zs-100&&zs!=xs&&xs<=zs+100){cout<<"你中小奖了---100元"<<endl;mony+=100;jf+=5;}
else cout<<"没中奖!"<<endl;
gn:
cout<<"欢迎下次光临"<<endl;
}
int zcz(){cout<<"1.个人信息 2.普通战场 3.挖矿石 4.卖矿石 5.买生命"<<endl<<"6.买彩票 7.开公司 8.商店 9.升级战场 10.关于"<<endl;}
int pd(){
if(mony>=1000){cout<<"你获得了1000元,积分+10"<<endl;jf+=10;}
if(mony>=10000){cout<<"你获得了10000元,积分+20"<<endl;jf+=20;}
if(mony>=100000){cout<<"你获得了100000元,积分+50"<<endl;jf+=50;}
if(hp>=20){cout<<"你获得了20滴血,积分+10"<<endl;jf+=10;}
if(hp>=30){cout<<"你获得了30滴血,积分+20"<<endl;jf+=20;}
if(hp>=50){cout<<"你获得了50滴血,积分+35"<<endl;jf+=35;}
}
int gs(){
cout<<"1.A公司(1000¥,每次赚-100元到150元)"<<endl;
cout<<"2.B公司(1300¥,每次赚-50元到150元)"<<endl;
cout<<"3.C公司(1500¥,每次赚-10元到200元)"<<endl;
cout<<"4.D公司(2000¥,每次赚0元到300元)"<<endl;
cout<<"5.E公司(3000¥,每次赚10元到500元):"<<endl;
int gsa;cin>>gsa;
if(gsa==1){
if(mony>=1000&&gs[gsa]!=0){cout<<"购买成功,每次赚-100元到150元"<<endl;mony-=1000;jf++;gss[gsa]=1;}
else cout<<"金费不够或公司已买"<<endl;
}
if(gsa==2){
if(mony>=1300&&gs[gsa]!=0){cout<<"购买成功,每次赚-50元到150元"<<endl;mony-=1300;jf++;gss[gsa]=1;}
else cout<<"金费不够或公司已买"<<endl;
}
if(gsa==3){
if(mony>=1500&&gs[gsa]!=0){cout<<"购买成功,每次赚-10元到200元"<<endl;mony-=1500;jf++;gss[gsa]=1;}
else cout<<"金费不够或公司已买"<<endl;
}
if(gsa==4){
if(mony>=2000&&gs[gsa]!=0){cout<<"购买成功,每次赚0元到300元"<<endl;mony-=2000;jf++;gss[gsa]=1;}
else cout<<"金费不够或公司已买"<<endl;
}
if(gsa==5){
if(mony>=3000&&gs[gsa]!=0){cout<<"购买成功,每次赚10元到500元"<<endl;mony-=3000;jf++;gss[gsa]=1;}
else cout<<"金费不够或公司已买"<<endl;
}
}
int gszq(){
if(gss[1]==1){
if(jf/hp%2==0){
if(mony/jf%2==1){cout<<"你的A公司亏了100元"<<endl;}
else{cout<<"你的A公司赚了100元"<<endl;}
}else{
if(mony/jf%2==0){cout<<"你的A公司亏了50元"<<endl;}
else{cout<<"你的A公司赚了150元"<<endl;}
}
}
if(gss[2]==1){
if(jf/hp%2==0){
if(mony/jf%2==1){cout<<"你的B公司亏了50元"<<endl;}
else{cout<<"你的B公司赚了100元"<<endl;}
}else{
if(mony/jf%2==0){cout<<"你的B公司赚了0元"<<endl;}
else{cout<<"你的B公司赚了150元"<<endl;}
}
}
if(gss[3]==1){
if(jf/hp%2==0){
if(mony/jf%2==1){cout<<"你的C公司亏了10元"<<endl;}
else{cout<<"你的C公司赚了100元"<<endl;}
}else{
if(mony/jf%2==0){cout<<"你的B公司赚了50元"<<endl;}
else{cout<<"你的C公司赚了200元"<<endl;}
}
}
if(gss[4]==1){
if(jf/hp%2==0){
if(mony/jf%2==1){cout<<"你的D公司赚了0元"<<endl;}
else{cout<<"你的D公司赚了100元"<<endl;}
}else{
if(mony/jf%2==0){cout<<"你的D公司赚了200元"<<endl;}
else{cout<<"你的D公司赚了300元"<<endl;}
}
}
if(gss[5]==1){
if(jf/hp%2==0){
if(mony/jf%2==1){cout<<"你的C公司赚了10元"<<endl;}
else{cout<<"你的C公司赚了300元"<<endl;}
}else{
if(mony/jf%2==0){cout<<"你的B公司赚了400元"<<endl;}
else{cout<<"你的C公司赚了500元"<<endl;}
}
}
}
int gy(){
cout<<" ============================================================================="<<endl;
cout<<"| 关于星际传奇11.0: |"<<endl;
cout<<"| 2022.12.3拟定 |"<<endl;
cout<<"| 共331行,11397个字符 |"<<endl;
cout<<"| 发现已知BUG,创造新功能 |"<<endl;
cout<<"| --------------------------------------------------------------------------- |"<<endl;
cout<<"| 版权所有,禁止抄袭。如有发现,依法处理!======2022.12.3 |"<<endl;
cout<<"| --------------------------------------------------------------------------- |"<<endl;
cout<<" ============================================================================="<<endl;
}
int sd(){
cout<<"欢迎来到“颜色”商店,你可以购买自己的装备:"<<endl;
cout<<"服装:1.蓝色妖姬服(300¥,-5) 2.黄色预警服(200¥,-4) 3.红色风暴服(150¥,-3)"<<endl;
cout<<"鞋子:4.黄金切尔西(100¥,-2) 5.钻石切尔西(150¥,-3) 6.岩浆切尔西(50¥,-1)"<<endl;
cout<<"你要购买几件:"<<endl;
int jj;cin>>jj;
cout<<endl;
cout<<"你要哪几件:"<<endl;
for(int i=1,ab;i<=jj;i++){
cin>>ab;
if(ab==1){
if(mony>=300&&sds[ab]!=1){
sds[ab]=1;
mony-=300;
cout<<"蓝色妖姬服购买成功"<<endl;
}else{cout<<"金钱不足或已购买"<<endl;}
}
if(ab==2){
if(mony>=200&&sds[ab]!=1){
sds[ab]=1;
mony-=200;
cout<<"黄色预警服购买成功"<<endl;
}else{cout<<"金钱不足或已购买"<<endl;}
}
if(ab==3){
if(mony>=150&&sds[ab]!=1){
sds[ab]=1;
mony-=150;
cout<<"红色风暴服购买成功"<<endl;
}else{cout<<"金钱不足或已购买"<<endl;}
}
if(ab==4){
if(mony>=100&&sds[ab]!=1){
sds[ab]=1;
mony-=100;
cout<<"黄金切尔西购买成功"<<endl;
}else{cout<<"金钱不足或已购买"<<endl;}
}
if(ab==5){
if(mony>=150&&sds[ab]!=1){
sds[ab]=1;
mony-=150;
cout<<"钻石切尔西购买成功"<<endl;
}else{cout<<"金钱不足或已购买"<<endl;}
}
if(ab==6){
if(mony>=50&&sds[ab]!=1){
sds[ab]=1;
mony-=50;
cout<<"岩浆切尔西购买成功"<<endl;
}else{cout<<"金钱不足或已购买"<<endl;}
}
}
cout<<"欢迎下次光临"<<endl;
}
int yszc(){
bool zc=false;
for(int i=1;i<=6;i++){if(sds[i]==1){zc=true;break;}}
if(zc==true){
cout<<"正在为你匹配对手:"<<endl;
int ds1=rand()%1000+1;
cout<<"匹配成功,是a"<<ds1<<"号选手"<<endl;
}else if(zc==false){cout<<"请先去商店买武器"<<endl;}
cout<<"下次再来"<<endl;
}
int main(){
kc();
OKkc_1();
OKkc_2();
string aff;
cout<<"用户名(10字以内):"<<endl;
cin>>aff;
while(1){
if(jf>=30&&jf<=60)cout<<"完成50%任务"<<endl;
if(jf>=60){
cout<<"完成任务!"<<endl;Sleep(1000);
cout<<"哦!他难道就是---"<<aff<<"对!他就是!我很喜欢他!他成功闯关了!他克服了好多好多困难!"<<endl;Sleep(4000);
cout<<"对啊-这很难,我很敬佩他!"<<endl;Sleep(3000);
cout<<"我也一样,他很细心,时刻关注血量和金币,牢记在心!"<<endl;Sleep(4000);
cout<<"要是我能像他一样该多好呀!"<<endl;Sleep(3000);
cout<<"我绝定送他一个勋章:"<<endl;Sleep(3000);
cout<<"星际之神!"<<endl;Sleep(2000);
cout<<"赠与你!"<<endl;Sleep(1000);
cout<<"希望在下场比赛中,我还能参见你奋斗的身影!"<<endl;Sleep(4000);
cout<<"加油!下次我们还能遇见你!"<<endl;Sleep(3000);
cout<<"你是最棒的!再见!"<<endl;Sleep(3000);
cout<<"下次见!"<<endl;Sleep(3000);
cout<<"----------星际传奇----------"<<endl;Sleep(4000);
break;
}
if(hp<=5&&xxz==1)cout<<"你的血量稀少"<<endl;
if(mony<=0&&xxz==1)cout<<"你的钱稀少"<<endl;
zcz();
cin>>zcz_xz;
if(hp<=0){cout<<"你突然死了,死因:血没了"<<endl;break;}
if(mony<=-50){cout<<"你死了,死因:过度贫穷"<<endl;break;}
pd();
gszq();
if(zcz_xz==1)zjm(hp,mony);
else if(zcz_xz==9)cout<<"预装"<<endl;//yszc();
else if(zcz_xz==8)sd();
else if(zcz_xz==10)gy();
else if(zcz_xz==2)cjzc();
else if(zcz_xz==3)ck(hp,mony);
else if(zcz_xz==4)mm(hp,mony);
else if(zcz_xz==5)gmsm(hp,mony);
else if(zcz_xz==7){
if(jf>=15)gs();
else cout<<"积分请先达到15分"<<endl;
}
else if(zcz_xz==6)cp();
else {cout<<"错误"<<endl;continue;}
}
cout<<"游戏结束---"<<"共获得"<<jf<<"积分"<<endl;
return 0;
}
我想的方法是用代码将结果保存到哪里,下一次运行再打开,就能回到上一次了。
我想要实现以上情况,谢谢!