猜单词游戏

来源:互联网 发布:linux搭建jenkins环境 编辑:程序博客网 时间:2024/05/17 08:21
#include<iostream>#include<stdlib.h>#include<time.h>using namespace std;#define YES 1#define NO 0void menu();int  sjs();void js();void tc();void startgame();bool quit=1;int i=1;char str[20][10]={"getby","honey","about","canoe","ski","hawk","haul","firewood","of","overdue","on","indoor","over","pursue","oversee","organ","stack","wicked","blast","between"};void main(){while(quit){menu();cout<<"请选择一种操作: ";int a;cin>>a;switch(a){case 1:{js();break;}case 2:{cout<<"你是第"<<i<<"个玩家"<<endl;startgame();i++;cout<<"想再玩一次吗?:(y/n)";char op;cin>>op;if(op=='n')quit=0;break;}case 3:quit=0;}}cout<<"游戏结束,想玩更多游戏,请上http://www.sanri.com"<<endl;getchar();}void menu(){cout<<endl;cout<<"************************~~欢迎进入sanri猜单词游戏~~**************************"<<endl;cout<<"*****************************菜单如下,请选择:*****************************"<<endl;cout<<endl;cout<<"*****************************·*1:游戏说明*·*********************************"<<endl;cout<<"*****************************·*2:开始游戏*·*********************************"<<endl;cout<<"*****************************·*3:退出*·*********************************"<<endl;}int sjs(){int n;srand(time(NULL));n=rand()%20;return n;}void js(){cout<<endl;cout<<"游戏规则如下:"<<endl;cout<<"系统有20个已设置好了的单词,游戏开始后,系统将随机从中抽取,玩家每次从键盘输入一个字母进行猜测,如果这个字母不在单词中系统提示玩家不对,玩家继续猜测,猜词次数由玩家自行设置,直到玩家在规定的次数里猜出来了单词中的所有字母或者超出游戏次数,则游戏结束."<<endl;cout<<endl;}void startgame(){char word[10];int have;       //have用来标识字母是否猜对int flag[10];   //标记每个字母int win=NO,all_win=YES,lenth=0,b,d;char ch;int right=0,wrong=0;b=sjs();for(int i=0;str[b-1][i]!='\0';i++){word[i]=str[b-1][i];lenth++;}for(int j=0;j<lenth;j++)flag[j]=0;cout<<"*******************************开始游戏*******************************"<<endl;cout<<"你抽中的是第"<<b<<"个单词"<<endl;cout<<"抽中的单词长度为:"<<lenth<<endl;cout<<"你准备猜多少次: ";cin>>d;while(d<=10){cout<<"为确保游戏的正常运行,请重新输入一个稍大的猜词次数"<<endl;cout<<"你准备猜多少次: ";cin>>d;}//system("pause");while(win==NO&&d){cout<<"你还剩"<<d<<"次"<<endl;cout<<"你要猜的单词大概是这个样子"<<endl;for(int i=0;i<lenth;i++){if(flag[i]==1)putchar(word[i]);else{putchar('_');putchar(' ');}}cout<<endl;cout<<"请输入一个字母用来猜测:";cin>>ch;getchar();for(int k=0;k<lenth;k++){if(flag[k]==0&&ch==word[k]){flag[k]=1;have=YES;                  //猜对了right++;d--;}}if(have==NO){cout<<"对不起,你猜错了,下次加油哦!";wrong++;d--;}else{cout<<"你猜对了,不错哦"<<endl;cout<<"你猜的字母在这个单词里面"<<endl;}have=NO;for(int m=0;m<lenth;m++){if(flag[m]!=1){all_win=NO;break;}}if(all_win)win=YES;all_win=YES;}if(win==YES){cout<<"你赢了,恭喜你"<<endl;cout<<"这个单词是:";for(int n=0;n<lenth;n++)putchar(word[n]);cout<<endl;}else{cout<<"不好意思,你输了"<<endl;cout<<"这个单词是:";for(int n=0;n<lenth;n++)putchar(word[n]);cout<<"你猜错了"<<wrong<<"次";cout<<"你猜对了"<<right<<"次";}}


0 0
原创粉丝点击