欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用C語言實(shí)現(xiàn)珠璣妙算Mastermind小游戲

 更新時間:2023年03月30日 11:10:49   作者:高星熠  
這篇文章主要介紹了使用C語言實(shí)現(xiàn)珠璣妙算Mastermind小游戲,這是一款益智類多人游戲游戲,非常有趣,需要的朋友可以參考下

引言

最近玩到過一款十分好玩的益智類桌游——珠璣妙算-Mastermind,這款游戲也出現(xiàn)在熱片《拆彈專家2》里,該款游戲就是有四個槽位,而要將6種顏色依次放入槽位之中,然后由出題人反饋正確位置及錯誤位置正確顏色數(shù),再通過邏輯推理,推出正確的顏色及位置。因?yàn)檫@種游戲?yàn)槎嗳擞螒颍粋€人不能自己出題、判斷及推理,我在手機(jī)上搜找相關(guān)游戲卻沒有找到相應(yīng)游戲,于是,萌生自主編寫的想法。

在這里插入圖片描述

( Mastermind(珠璣妙算)是一種可供兩名玩家使用的密碼破譯棋盤游戲。在1970年由Mordecai Meirowitz發(fā)明,他是一位以色列郵政和電信專家。 但游戲類似早期一種利用鉛筆和紙進(jìn)行的游戲,游戲名為“公牛和母牛”,可能追溯到一個世紀(jì)或更長時間。)

代碼

這里其實(shí)原理與代碼十分簡單,是通過幾個條件進(jìn)行的邏輯判定。

#include<stdio.h>
#include <stdlib.h>
#include<time.h>
 main()
{
 int a,b,c,d,x,y,z,w,flag1=0,i=0,j=0,l=0,m=0;
 srand(time(NULL));//用機(jī)器時間設(shè)置隨機(jī)種子
 x=rand()%6+1;//生成6個隨機(jī)數(shù)字 
 do
 {y=rand()%6+1;}
 while(y==x);
 do
 {z=rand()%6+1;}
 while(z==x || z==y);
 do
 {w=rand()%6+1;}
 while(w==z || w==x || w==y);//設(shè)置的6個隨機(jī)數(shù)互不相同 
 while(flag1==0)
 {
  printf("請依次輸入4個數(shù)字(1-6中),謝謝,這是第 %d 次嘗試\n-\n ",m+1);
  scanf("%d %d %d %d",&a,&b,&c,&d);
  if(a==x)
  i++;
  if(b==y)
  i++;
  if(c==z)
  i++;
  if(d==w)
  i++;     //確定正確位置個數(shù) 
     if(a!=x && (x==b || x==c || x==d))
     j++;
     if(b!=y && (y==a || y==c || y==d))
     j++;
     if(c!=z && (z==a || z==b || z==d))
     j++;
     if(d!=w && (w==a || w==b || w==c))
     j++;     //確定錯誤位置、正確數(shù)值個數(shù) 
     printf("\n正確位置及數(shù)值有 %d 個,正確數(shù)值錯誤位置有 %d 個\n",i,j);
     if(i==4)//完全推出情況返回答案,反饋推理次數(shù),跳出循環(huán) 
     {
      m++;
   printf("\n恭喜你答對了,你用了 %d 次,答案是: %d %d %d %d\n",m,x,y,z,w);
   flag1++;
  }
     m++;//次數(shù)加一 
     i=0;
     j=0;//判斷正確位置個數(shù)及確定錯誤位置、正確數(shù)值個數(shù)清零 
 }
}

運(yùn)行嘗試

在這里插入圖片描述

結(jié)語

用C語言實(shí)現(xiàn)了該款游戲后,這款游戲還是十分的簡陋,此后我會繼續(xù)優(yōu)化該款游戲圖形化界面等方面。

到此這篇關(guān)于使用C語言實(shí)現(xiàn)珠璣妙算Mastermind小游戲的文章就介紹到這了,更多相關(guān)C語言Mastermind小游戲內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論