最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

引言

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

在這里插入圖片描述

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

代碼

這里其實(shí)原理與代碼十分簡(jiǎn)單,是通過幾個(gè)條件進(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í)間設(shè)置隨機(jī)種子
 x=rand()%6+1;//生成6個(gè)隨機(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個(gè)隨機(jī)數(shù)互不相同 
 while(flag1==0)
 {
  printf("請(qǐng)依次輸入4個(gè)數(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++;     //確定正確位置個(gè)數(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++;     //確定錯(cuò)誤位置、正確數(shù)值個(gè)數(shù) 
     printf("\n正確位置及數(shù)值有 %d 個(gè),正確數(shù)值錯(cuò)誤位置有 %d 個(gè)\n",i,j);
     if(i==4)//完全推出情況返回答案,反饋推理次數(shù),跳出循環(huán) 
     {
      m++;
   printf("\n恭喜你答對(duì)了,你用了 %d 次,答案是: %d %d %d %d\n",m,x,y,z,w);
   flag1++;
  }
     m++;//次數(shù)加一 
     i=0;
     j=0;//判斷正確位置個(gè)數(shù)及確定錯(cuò)誤位置、正確數(shù)值個(gè)數(shù)清零 
 }
}

運(yùn)行嘗試

在這里插入圖片描述

結(jié)語

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

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

相關(guān)文章

  • 詳解C++中二進(jìn)制求補(bǔ)運(yùn)算符與下標(biāo)運(yùn)算符的用法

    詳解C++中二進(jìn)制求補(bǔ)運(yùn)算符與下標(biāo)運(yùn)算符的用法

    這篇文章主要介紹了C++中二進(jìn)制求補(bǔ)運(yùn)算符與下標(biāo)運(yùn)算符的用法,是C++入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2016-01-01
  • C語言入門篇--局部全局變量的作用域及生命周期

    C語言入門篇--局部全局變量的作用域及生命周期

    本篇文章是c語言基礎(chǔ)篇,本文對(duì)初識(shí)c語言的變量、局部全局變量的作用域及生命周期做了簡(jiǎn)要的概述,希望可以幫助大家快速入門c語言的世界,更好的理解c語言
    2021-08-08
  • 關(guān)于C++中虛擬繼承的一些總結(jié)分析

    關(guān)于C++中虛擬繼承的一些總結(jié)分析

    虛擬繼承在一般的應(yīng)用中很少用到,所以也往往被忽視,這也主要是因?yàn)樵贑++中,多重繼承是不推薦的,也并不常用
    2013-09-09
  • 詳解C++ STL vector容量(capacity)和大小(size)的區(qū)別

    詳解C++ STL vector容量(capacity)和大小(size)的區(qū)別

    這篇文章主要介紹了詳解C++ STL vector容量(capacity)和大小(size)的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • C語言中dlopen和dlsym的使用方式詳解

    C語言中dlopen和dlsym的使用方式詳解

    這篇文章主要為大家詳細(xì)介紹了C語言中dlopen和dlsym的使用方式,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • C++11基于范圍的for循環(huán)代碼示例

    C++11基于范圍的for循環(huán)代碼示例

    這篇文章主要給大家介紹了關(guān)于C++11基于范圍的for循環(huán)的相關(guān)資料,范圍for循環(huán)(也稱為C++11的基于范圍的for循環(huán))是一種簡(jiǎn)化迭代容器(如數(shù)組、向量、列表等)元素的方式,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-06-06
  • C語言實(shí)現(xiàn)九大排序算法的實(shí)例代碼

    C語言實(shí)現(xiàn)九大排序算法的實(shí)例代碼

    這篇文章主要給大家介紹了關(guān)于C語言實(shí)現(xiàn)九大排序算法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • C++11中的智能指針和垃圾回收使用

    C++11中的智能指針和垃圾回收使用

    本文主要介紹了C++11中的智能指針和垃圾回收使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • C++ 標(biāo)準(zhǔn)模板類詳解

    C++ 標(biāo)準(zhǔn)模板類詳解

    今天小編就為大家分享一篇關(guān)于C++標(biāo)準(zhǔn)模板類的介紹與使用講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2021-09-09
  • Matlab繪制花里胡哨的山脊圖

    Matlab繪制花里胡哨的山脊圖

    這篇文章主要介紹了如何利用Matlab實(shí)現(xiàn)繪制一些花里胡哨的山脊圖,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Matlab有一定的幫助,需要的可以參考一下
    2023-02-02

最新評(píng)論

个旧市| 左云县| 宾阳县| 凤庆县| 乌拉特后旗| 汉川市| 南昌县| 页游| 巧家县| 岢岚县| 灵宝市| 崇文区| 营山县| 太白县| 临桂县| 乐亭县| 陵川县| 宜宾市| 永顺县| 晋宁县| 福鼎市| 四子王旗| 临颍县| 福安市| 稻城县| 永安市| 平乐县| 定州市| 延津县| 三门县| 隆林| 昌黎县| 兴山县| 郎溪县| 砚山县| 泰安市| 长兴县| 苍南县| 磐石市| 新巴尔虎左旗| 彭阳县|