吊死人小游戏 1.0版本
生活随笔
收集整理的這篇文章主要介紹了
吊死人小游戏 1.0版本
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
游戲名稱:
吊死人小游戲1.0版本(4位數字版本)
游戲玩法:
每次輸入一個4位數,表示你所猜4個數字。
如果你猜對了其中的幾個數字,那么下方的4個問號中與你所猜對數字對應的數字將顯現出來。
如果你猜錯了,上方的小人將會被畫上一筆。
一旦小人被畫上7筆,游戲失敗,結束。
如果你在小人被畫上7筆之前猜對所有的數字,游戲成功,結束。
制作過程與解析:
變量
int sigui;//小人被畫了幾筆 char shuru;//輸入的數字 int ans=4;//剩下需要猜的數字的個數 bool flag,fl;//判斷是否四個數字都沒猜對,判斷是否至少猜對了一個數字 int bo;//判斷失敗或勝利結構體
struct youxi{char shuchu;//每次輸入后下方出現的問號或數字int daan;//用來存這四個數字的答案}a[10];有了主要的變量與支撐起整個程序的結構體,接下來就是寫函數啦~~
初始化函數:
void make() {srand((unsigned)time(NULL));//隨時間改變的隨機值for(int i=1;i<=4;i++){a[i].daan=rand()%10;//隨機生成0~9的隨機數(生成答案)a[i].shuchu='?';//初始化成?}sigui=0;//小人被畫的次數清零 }小人函數(即輸出被掉的小人當前的狀態):
void gui(int x) {if(x==1)//分別按照小人被畫的次數來輸出{printf(" O \n\n\n\n\n");}if(x==2){printf(" O \n | \n\n\n\n");}if(x==3){printf(" O \n /| \n\n\n\n");}if(x==4){printf(" O \n /|/ \n\n\n\n"); }if(x==5){printf(" O \n /|/ \n / \n\n\n");}if(x==6){printf(" O \n /|/ \n //\n\n\n");}if(x==7){printf(" -O \n|/|/ \n|//\n ____ \n\n");} }執行函數(不是最終執行):
void zhixing() {flag=fl=0;//初始化for(int i=1;i<=4;i++){cin>>shuru;//輸入每一個數字if(a[i].shuchu!='?')//如果已經猜對了{continue;}if(shuru==a[i].daan+'0')//以前沒有猜對但是這次猜對了{a[i].shuchu=shuru;//賦值給輸出ans--;//剩余數字減一fl=1;//至少猜對了一個}else{flag=1; //沒猜對}}if(fl==1)//如果至少猜對了一個數字{flag=0;//也算猜對了,flag清零}if(flag==1)//一個也沒猜對{sigui++;//筆畫加一}gui(sigui);//輸出當前狀態 }輸出函數(總執行函數):
void shuchu() {zhixing();//執行輸入if(sigui==0)//沒用{cout<<"\n\n\n\n\n";}if(sigui==7)//如果小人已經被畫上了7畫{bo=1;//失敗了return;//返回}if(ans==0)//所有數字都猜對了{bo=-1;//勝利了return;//返回}for(int i=1;i<=4;i++)//輸出{cout<<a[i].shuchu;}cout<<endl;//換行 }主函數:
int main() {make();//首先初始化while(1)//創建一個死循環{shuchu();//開始執行if(bo==1)//如果失敗了{cout<<"你失敗了!!!\n"; //輸出return 0;//結束} else{if(bo==-1)//如果勝利了{cout<<"你贏了!!!\n";//輸出return 0;//結束}}}return 0; }總代碼:
#include<bits/stdc++.h>using namespace std;struct youxi{char shuchu;int daan;}a[10];int sigui; char shuru; int ans=4; bool flag,fl; int bo;void make() {srand((unsigned)time(NULL));for(int i=1;i<=4;i++){a[i].daan=rand()%10;a[i].shuchu='?';}sigui=0; }void gui(int x) {if(x==1){printf(" O \n\n\n\n\n");}if(x==2){printf(" O \n | \n\n\n\n");}if(x==3){printf(" O \n /| \n\n\n\n");}if(x==4){printf(" O \n /|/ \n\n\n\n"); }if(x==5){printf(" O \n /|/ \n / \n\n\n");}if(x==6){printf(" O \n /|/ \n //\n\n\n");}if(x==7){printf(" -O \n|/|/ \n|//\n ____ \n\n");} }void zhixing() {flag=fl=0;for(int i=1;i<=4;i++){cin>>shuru;if(a[i].shuchu!='?'){continue;}if(shuru==a[i].daan+'0'){a[i].shuchu=shuru;ans--;fl=1;}else{flag=1; }}if(fl==1){flag=0;}if(flag==1){sigui++;}gui(sigui); }void shuchu() {zhixing();if(sigui==0){cout<<"\n\n\n\n\n";}if(sigui==7){bo=1;return;}if(ans==0){bo=-1;return;}for(int i=1;i<=4;i++){cout<<a[i].shuchu;}cout<<endl; }int main() {make();while(1){shuchu();if(bo==1){cout<<"你失敗了!!!\n"; return 0;} else{if(bo==-1){cout<<"你贏了!!!\n";return 0;}}}return 0; }一個小小的請求:
點個贊再走可以嗎QAQ
No more······
(有2.0版本哦)
總結
以上是生活随笔為你收集整理的吊死人小游戏 1.0版本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用 jsoup 对 HTML 文档进行
- 下一篇: 163邮箱端口