• 板块灌水区
  • 楼主whl666666
  • 当前回复0
  • 已保存回复0
  • 发布时间2025/1/24 14:34
  • 上次更新2025/1/24 17:01:10
查看原帖
1281591
whl666666楼主2025/1/24 14:34

各位大佬,我的代码为什么到die2()这个函数就停止循环了?

#include<bits/stdc++.h>
#include<windows.h>
#include<ctime> 
#include<stdlib.h>
#include<time.h> 
#include<stdio.h>
using namespace std;
int r;
#define kd(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
char ks,mm;
void die1();
void dwy2();
void dwy3();
void die2();
void dwy1();
int getRand(int min,int max);
void out(const string a){
	size_t len=a.size();
	for(int i=0;i<a.size();i++){
		cout<<a[i];
		Sleep(1);
	}
	cout<<"\n";
}
void kt(){
	cout<<"==============================="<<"\n"; 
	cout<<"         动物园规则怪谈 1          "<<"\n";
	cout<<"==============================="<<"\n \n"; 
	out("爱玩游戏的小朋友你们好啊!");cout<<"\n";
	out("欢迎你们来到 动物园规则怪谈 !");cout<<"\n";
	out("欢迎你们来玩我的游戏,我的名字叫:whl666666");cout<<"\n";
	out("本游戏很容易崩掉,在阅读剧情时不要乱动!!!") ; 
	out("本游戏很容易崩掉,在阅读剧情时不要乱动!!!") ;
	out("本游戏很容易崩掉,在阅读剧情时不要乱动!!!") ;cout<<"\n";
	out("如果在打入剧情时停止,可以按回车(或重新运行!)") ;cout<<"\n";
	out("不要抄袭哦^v^") ;cout<<"\n";
	out("注:患有心脏病/神精病/OI狂魔病/快乐WA WA病请不要游玩此游戏!!!");cout<<"\n" ;
	out("按 M 查看守则……"); 
} 
void dwygz(){
	system("cls");
	cout<<"市动物园园区游客守则:"<<endl;cout<<"\n";
	out("亲爱的游客,欢迎你们来到本市最大的动物园。");cout<<"\n";
	out("我们收录世界上大部分动物,并保证为每一种动物都打造适宜它们的环境,希望您和您的孩子可以观光愉快!");cout<<"\n";
	out("在观光游览时,请各位游客务必遵守以下规则,以确保你们的安全,否则后果自负。");cout<<"\n";
	out("1.本园安全措施保障绝对没有问题,动物没有出逃的可能性,尤其是小型草食动物大多被关押在不可触摸的封闭性环境里。因此,如果您看见路边有逃跑的兔子,请立刻带着您的孩子远离并报告工作人员,不要靠近,不要触摸,尤其是兔子发现并且开始高速靠近你的时候。");cout<<"\n";
	out("2.猿类的园区只有一条街道,且只展示猿类动物。如果您发现了两条街道,且展示动物包括兔子,请选择左边那条,并尽可能快速地结束对该园区的参观。");cout<<"\n";//已完成 
	out("3.大象是一种体型巨大、有着扇子一般的耳朵、鼻子很长、腿粗得像柱子的生物,而且不是白色的。请确保你在大象园区看见的是且只有大象。");cout<<"\n";
	out("4.动物园的饮料店不提供“兔子血”,如果您在货架上看见了,请不要购买。");cout<<"\n";
	out("5.不要独自停留在兔子园区的树荫下。");cout<<"\n" ;
	out("6.本园没有海洋馆。如果有工作人员向您贩卖海洋馆的票,拒绝他们。");cout<<"\n";
	out("7.如果您已经看见了海洋馆,立刻离开,并打通地图上标记的电话进行告知。");cout<<"\n";
	out("8.不要投喂兔子。其余的动物都可以。");cout<<"\n";
	out("9.兔子不会发出笑声。如果您在参观兔子园区时听见明显不来自游客方向的笑声,离开园区前,请把地图上虚线处撕下来握住,在彻底离开动物园时不要离手。");cout<<"\n";
	out("10.如果您触犯了以上任何一条,并且发现自己正在迷路状态,和其他熟人走散,请立刻在一刻钟内找到离您最近的饮料店,告知那里穿蓝色工作服的售货员(注意,如果看见穿黑色工作服的售货员,不论对方对您说什么都请假装没听见),他会马上带您到狮子园区的工作通道。不要害怕,这里的狮子不会袭击您,躲在假山后面,等所有的白狮子都开始吼叫后,工作人员将会带你离开园区(请确认他是蓝色衣服),这时候你的家人朋友会在狮子园区门口等着你。在这一切之后,立刻离开动物园。");cout<<"\n";
	out("11.本园只有四头白狮子。如果在第十条描述的情况中你看见了四头以上白狮子在吼叫,不要离开园区,并告知工作人员,等白狮子数量恢复四头后再离开。");cout<<"\n";
	out("12.可以给12岁及以下的孩子购买任何动物周边玩具,包括兔子;13-17岁的孩子购买兔子玩偶后,请在一个月内丢弃;18岁及以上的人群不可以购买兔子玩具。");cout<<"\n";
	out("13.如果看见有戴兔子耳饰的人跟随人流进入大象园区,必须放弃参观该园区。如果违反本条,本园不对您的安全负责,且无法给您提供解决方案。");cout<<"\n";
	out("14.狮子园区是安全的。如果您遭遇任何您无法解决的危险事件,也无法求助,请立刻、不择手段、尽一切可能前往狮子园区。");cout<<"\n";
	out("15.警惕和您走散过一次以上的朋友,尤其是他们反复劝你前往海洋馆或大象园区时。") ;cout<<"\n";
	out("只要遵守以上规则,您就会拥有一个愉快的动物园旅程!");cout<<"\n";
	out("您和您的孩子都将收货数不尽的快乐和知识!");cout<<"\n";
	out("遵守规则,注意安全,祝您和您的家人朋友玩得开心!");cout<<"\n";
	out("按 R 进入动物园……");cout<<"\n";
	while(1) if(kd(VK_NUMPAD1)||kd('R')) break;
	dwy1();
}
void dwy1(){
	system("cls");
	out("小白: 欢迎您进入动物园,我是您的机器人助手 小白 ");cout<<"\n";
	out("小白: 接下来我们去猿区,怎么样?");cout<<"\n";
	out("同意/不同意(y/n)(本此需要回车)");cout<<"\n";
	cin>>ks;
	if(ks=='y'||ks=='Y') dwy2();
	if(ks=='n'||ks=='N') die1();
	else {
		out("请重新输入!");cout<<"\n";
		cin>>ks;
	if(ks=='y'||ks=='Y') dwy2();
	if(ks=='n'||ks=='N') die1();
		else {
		out("请重新输入!!");cout<<"\n";
		cin>>ks;
	if(ks=='y'||ks=='Y') dwy2();
	if(ks=='n'||ks=='N') die1();
		else {
		out("请重新输入!!!");cout<<"\n";
		cin>>ks;
	if(ks=='y'||ks=='Y') dwy2();
	if(ks=='n'||ks=='N') die1();
		else {
		out("对不起,游戏崩掉了………………");cout<<"\n";
		Sleep(3000); 
	}
	}
	}
	}
}
void die1(){
	out("小白: 不同意? 那去哪?(小白对你冷淡了一些)");cout<<"\n";
	out("小白: 想去哪?"); cout<<"\n";
	Sleep(3000);
	system("color 4C");
	out("小白: 还去哪,你去天堂吧!"); cout<<"\n";
	out("你死了…………"); cout<<"\n";
	cout<<"==============================="<<"\n"; 
	cout<<"          复活ing              "<<"\n";
	cout<<"==============================="<<"\n \n"; 
	Sleep(3000);
	out("复活成功!");
	Sleep(1000);	
	system("color 07");
	dwy1();
}
void dwy2(){
	out("小白: OK");cout<<"\n";
	out("小白: 我先去旁边的椅子上休息一会,你自己先去^v^");cout<<"\n";
	out("你不由自主的离开了小白,直到你离开小白…………………………………………………");cout<<"\n";cout<<"\n";
	out("你: 奇怪,我刚刚没有动啊?") ;cout<<"\n";
	out("你:你回头没看到小白,可是你转过头一看…………………………………………………") ;cout<<"\n";
	Sleep(3000);
	system("cls");
	system("color 4C");
	out("一只兔子正在高速向你靠近"); cout<<"\n";
	out("兔子看起来十分可爱,好像没有什么敌意?");cout<<"\n";
	out("你要去摸摸吗?还是你好心去报告工作人员?(y/n)");cout<<"\n";
	cin>>mm; 
	if(mm=='y'||ks=='Y') die2();
	if(mm=='n'||ks=='N') dwy3();
	else {
		out("请重新输入!");cout<<"\n";
		cin>>mm; 
		if(mm=='y'||ks=='Y') die2();
		if(mm=='n'||ks=='N') dwy3();
		else {
		out("请重新输入!!");cout<<"\n";
		cin>>mm; 
		if(mm=='y'||ks=='Y') die2();
		if(mm=='n'||ks=='N') dwy3();
		else {
		out("请重新输入!!!");cout<<"\n";
		cin>>mm; 
		if(mm=='y'||ks=='Y') die2();
		if(mm=='n'||ks=='N') dwy3();
		else {
		out("对不起,游戏崩掉了………………");cout<<"\n";
		Sleep(3000); 
	}
	}
	}
	}
}
char zm; 
void dwy3(){

} 
int main(){
	srand((unsigned)time( NULL ));
	r=rand()%2+1;
	kt();
	while(1) if(kd(VK_NUMPAD1)||kd('M')) break;
	dwygz();
	return 0;
}
void die2(){
	out("恭喜你,你被兔子碰到了,你的眼睛有些许变红");cout<<"\n";
	out("你现在只能去找饮料店………………") ;cout<<"\n";
	if(r==1){
		system("color 07");
		out("你找到了黑色工作服的售货员"); cout<<"\n";
		out("他要求你跟他走 Y.回应他,并跟他走。N.不理他,去找另一个饮料店") ;
		cin>>zm;
		if(zm=='y'||ks=='Y') {
			out("他把你带进了兔子园区,他要看你的地图………………") ;cout<<"\n";
			out("你地图上的虚线部分被他撕掉了");cout<<"\n"; 
			out("你没有了虚线部分………………") ;cout<<"\n"; 
			system("color 4C");
			out("你遇到了 '它' !");cout<<"\n";
			out("你违反了第10条规则………………");cout<<"\n";
			out("你死了…………"); cout<<"\n";
			cout<<"==============================="<<"\n"; 
			cout<<"          复活ing              "<<"\n";
			cout<<"==============================="<<"\n \n"; 
			Sleep(3000);
			out("复活成功!");
			Sleep(1000);	
			system("color 07");
			dwygz(); 
		}
		if(zm=='n'||ks=='N') {
			
		}
	}
	else if(r==2){
		
	}
}
2025/1/24 14:34
加载中...