做了一段搞笑游戏,原理比较简单,但涉及到的范围比较多。
想实现的效果:用户按照我们程序的提示输入一个词语,我们将这些词语替换到一些文章段落中,做出一种“驴唇不对马嘴”的效果,从而达到让用户开心的目的。
1.字符串数组的输出输入
首先,我们需要添加头文件,
#include<string>
随后,建一个字符串数组,用来储存用户输入的词语
string a[50];
这里我们为了防止越界乱码,建的大一点
2.随机数获取幸运值
在开头有一个帮用户测幸运值的部分,需要用到两个头文件
#include<stdlib.h>
#include<time.h>
随后,随机!!!
srand(time(NULL));
x = (rand()%(100-1+1)+1);
这里用到一个产生从a到b的随机数公式:
(rand()%(b-a+1)+a)
3.等待(比较简单)
首先,导入头文件
#include<time.h>//等待
然后,用
Sleep(1000)
进行等待1秒,注意Sleep的S要大写。
上代码!!!
#include<iostream>//c++
#include<time.h>//等待
#include<string>//输入
#include<conio.h>//判断键盘输入
#include<windows.h>//窗口
#include<stdlib.h>//随机数
using namespace std;
int main()
{
cout<<" 欢迎体验趣味小游戏"<<endl;
cout<<"---------------------------------------------------------------------------------------"<<endl;
cout<<" 按S或s直接开始游戏 "<<endl;
cout<<" 按P或p退出游戏 "<<endl;
int ch;//获取键盘按下
int ch_1;//获取空格
string a[50];
string s[100];//
int XY;
int x;
while (1)
{
if (_kbhit()){
ch = _getch();
if ((ch==83) || (ch==115) ){//ASCll 83为大写,115为小写
system("cls");
cout<<"加载中.";
Sleep(1500);
cout<<".";
Sleep(1500);
cout<<"."<<endl;
cout<<"加载完成,游戏5秒后开始"<<endl;
Sleep(5000);
cout<<" 游戏开始"<<endl;
cout<<"首先,输入一个数字,我帮你算算你今天的幸运值"<<endl;
cin>>XY;
srand(time(NULL));
x = (rand()%(100-1+1)+1);
cout<<"你的幸运值是"<<x<<endl;
cout<<"请输入一个状态词 如:开心的";
cin>>a[0];
cout<<"请输入一个形容词 如:神秘的";
cin>>a[1];
cout<<"请输入一个拟声词 如:扑通";
cin>>a[2];
cout<<"请输入一个形容词 如:大声的";
cin>>a[3];
cout<<"请输入春眠不觉晓的后一句";
cin>>a[4];
cout<<"见证奇迹的时刻!!!!"<<endl<<endl<<endl;
Sleep(3000);
cout<<"今天,我";
printf("\033[4;42m");//绿色
cout<<a[0];
//<<"\033[0m 地走在路上,";
printf("\033[0m");//普通
cout<<"地走在路上,因为今天是星期一,学校要提前到校。突然,有一个人";
printf("\033[4;42m");
cout<<a[1];
printf("\033[0m");//普通
cout<<"和你说:“跟我来,千万别看地面!”";
cout<<"你很好奇,跟着他走了。不一会,你";
printf("\033[4;42m");//绿色
cout<<a[2];
printf("\033[0m");//普通
cout<<"一声掉进了一个水塘里,你";
printf("\033[4;42m");//绿色
cout<< a[3];
printf("\033[0m");//普通
cout<<"地呼救。终于,你被救上来了。第二天,那个人又来跟你说话,俗话说:一朝被蛇咬,";
printf("\033[4;42m");//绿色
cout<<a[4];
printf("\033[0m");//普通
cout<<"。你没有理他,继续向前走。他竟然还跟着你,这时,你想起来那句话:";
printf("\033[4;42m");//绿色
cout<<"子曰:打架用砖乎,往头上乎,使劲乎,一砖乎死也。";
printf("\033[0m");//普通
Sleep(5000);
cout<<"所以,你用砖乎了他。";
cout<<"你醒了。"<<endl;
cout<<"这只是热身小菜。"<<endl;
cout<<"(2)"<<endl;
cout<<"请输入一个形容词(带的) 如兴奋的";
cin>>s[0];
cout<<"请输入一位电影明星 如成龙";
cin>>s[1];
cout<<"请输入一种衣物 如T恤衫";
cin>>s[2];
cout<<"请输入一个身体部位 如手";
cin>>s[3];
cout<<"请输入一个名词 如门";
cin>>s[4];
cout<<"一个不同的身体部位(如果你上回说的是手,这回就不要说手)";
cin>>s[5];
cout<<"一名家庭成员 如:爷爷";
cin>>s[6];
cout<<"一只动物 如:白头海雕";
cin>>s[7];
cout<<"一个数字 如:21";
cin>>s[8];
cout<<"一个形容词(加的)如:柔软的";
cin>>s[9];
cout<<"一个动词 如:吃";
cin>>s[10];
cout<<"一个交通工具 如:火车";
cin>>s[11];
cout<<"一个形容词(加的)如:黏的";
cin>>s[12];
cout<<"一间房间 如:厨房";
cin>>s[13];
cout<<"一个形容词(加的)如:开心的";
cin>>s[14];
cout<<"一句感叹语(加叹号)如:God!";
cin>>s[15];
cout<<"一个数字 如:1128";
cin>>s[16];
cout<<"一个动词 如:睡";
cin>>s[17];
cout<<"见证奇迹的时刻!!!";
Sleep (1000);
printf("\033[094mem......\n见证奇迹的时刻到了!请把嘴里的水、饭咽了,做好准备~~~\n");
Sleep (3000);
system ("cls");
printf("\033[00m 众所周知,万圣节是一年中最\033[92m");
cout << s[0];
printf("\033[00m的节日。在这一年,我准备扮演\033[92m");
cout << s[1];
printf("\033[00m。所以,我把我最喜欢的\033[92m");
cout << s[2];
printf("\033[00m穿戴在\033[92m");
cout << s[3];
printf("\033[00m上,又把\033[92m");
cout << s[4];
printf("\033[00m穿戴在\033[92m");
cout << s[5];
printf("\033[00m上。\n 接下来,我的\033[92m");
cout << s[6];
printf("\033[00m,我的宠物\033[92m");
cout << s[7];
printf("\033[00m,和我一起去“不给糖就捣蛋”。但是大街上空无一人,方圆\033[92m");
cout << s[8];
printf("\033[00m公里都没有小朋友。有些\033[92m");
cout << s[9];
printf("\033[00m事情正在发生......\n 我们开始\033[92m");
cout << s[10];
printf("\033[00m家,但是我看见很多\033[92m");
cout << s[11];
printf("\033[00m围在我家的周围,还听到了\033[92m");
cout << s[12];
printf("\033[00m的噪音。突然,我看见我的所有朋友都在我的家里,准备给我们一个惊喜万圣节派对。但是,在他们看到我们之前,我们蹑手蹑脚地走进\033[92m");
cout << s[13];
printf("\033[00m,戴上了我们\033[92m");
cout << s[14];
printf("\033[00m面具,并且跳出窗外,大声喊道:“\033[92m");
cout << s[15];
printf("\033[00m”所有人至少跳出了\033[92m");
cout << s[16];
printf("\033[00m米,并且开始\033[92m");
cout << s[17];
printf("\033[00m。真是一次有趣的万圣节!\n\n\n");
Sleep (4000);
break;
}
if ((ch==80) || (ch==112) )
{
return 0;
break;
}
}
}
return 0;
}
(Dev-c++)运行通过。