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

C語言實現(xiàn)猜數(shù)字游戲的兩種方法

 更新時間:2022年01月07日 09:39:36   作者:愛德蘇  
猜數(shù)字小游戲是我們大多數(shù)人學(xué)習(xí)C語言時都會了解到的一個有趣的C語言小游戲,本文就詳細的介紹一下,具有一定的參考價值,感興趣的小伙伴們可以參考一下

前言

猜數(shù)字小游戲是我們大多數(shù)人學(xué)習(xí)C語言時都會了解到的一個有趣的C語言小游戲,下面我將詳細介紹該游戲的實現(xiàn)和編程邏輯。并用二分法速通該小游戲。玩小游戲的同時,也能對C語言控制語句有更好的認識。

一、游戲描述

游戲內(nèi)容

顧名思義,該程序讓系統(tǒng)隨機生成一個0-100的整數(shù),讓玩家來猜,玩家猜數(shù)字后,系統(tǒng)給予玩家回饋并且統(tǒng)計玩家猜的次數(shù),直到玩家猜對為止。

游戲方法

1、生成游戲菜單 1. play(進入游戲) 0. exit (退出游戲)
2、使用循環(huán)語句,構(gòu)建游戲框架,使玩家可以進行多次游戲,直到猜對為止。
3、設(shè)計游戲具體思路,使系統(tǒng)生成一個隨機數(shù),讓玩家輸入一個數(shù)字,然后兩個數(shù)字對比,根據(jù)系統(tǒng)反饋信息,逐漸鎖定目標(biāo)。

二、代碼實現(xiàn)

1.生成游戲菜單

(1)  void menu()

(2)效果顯示

2.構(gòu)建主函數(shù) 

int main()函數(shù)

使用 do--while() 循環(huán),玩家進行多次猜數(shù)。用switch語句,控制玩游戲還是,退出游戲。

有時程序需要一個規(guī)定范圍內(nèi)的隨機數(shù)。要將隨機數(shù)的范圍限制在 1 和某個最大值 max 之間的整數(shù),可以使用以下公式:
number = rand() % max + 1;
例如,要生成 1-10 的隨機數(shù)來代表骰子的點數(shù),則可以使用以下語句:
dice = rand() % 610+ 1; 

3.構(gòu)建游戲函數(shù) 

游戲效果演示 :

三、二分法實現(xiàn)猜數(shù)

如果使用二分法進行猜100以內(nèi)的任何一個隨機數(shù),最多七次就可以正確猜對該隨機數(shù)。

二分法又可以被稱為二分查找,它描述了在有序集合中搜索特定值的過程。廣義的二分查找是將問題的規(guī)模盡可能的縮小到原有的一半。

程序通過二分法不斷縮小猜測范圍, 直到猜中n
例如n = 93
程序第一次猜測50, 判斷數(shù)值太小
第二次猜測75,判斷數(shù)值太小
第三次猜測87,判斷數(shù)值太小
第四次次猜測93, ringht

如果93不對,我們還能繼續(xù)根據(jù)反饋縮小范圍,最多七次就可以猜對答案

代碼附上:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>//time系統(tǒng)時間頭文件 
void menu()//創(chuàng)建游戲菜單 
{
	printf("**************\n");
	printf("****1.play****\n");
	printf("****0.exit****\n");
	printf("**************\n");
 } 
void playgame()
{
	int magic=rand()%100+1;//隨機一個1-100的整數(shù) 
	int guess;
	int counter=0;//計數(shù)器,初始為0 
	while(1)
	{
		do{
		    printf("請猜一個數(shù)字:");//提示用戶進行猜數(shù)字游戲,輸入一個整數(shù)
		    scanf("%d",&guess);
		    counter++;
		    if(guess>magic)//根據(jù)比較結(jié)果,提示用戶高了,低了,或是猜對了.
		    printf("太大了!\n");
		    else if(guess<magic)
		    printf("太小了!\n");
		else
		    printf("right!\n");	 
	    }while(guess!=magic);
	printf("您一共猜了%d次,你真是太棒了!\n",counter);
	}		
}
int main()
{
	int input=0;
	srand((unsigned int)time(0));//time(0)得到的是時間戳,對應(yīng)頭文件#include <time.h>
	do{
		menu();
	    scanf("%d",&input); 
	    switch(input)
	    {
	    	case 1:
	    		playgame();
	    		break;
	        case 0:
	        	exit(0);
	        	break;
	        default:
	        printf("輸入錯誤!\n");
		}
	}while(input);
	return 0;
}

到此這篇關(guān)于C語言實現(xiàn)猜數(shù)字游戲的兩種方法的文章就介紹到這了,更多相關(guān)C語言 猜數(shù)字內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 雙緩沖解決VC++繪圖時屏幕閃爍

    雙緩沖解決VC++繪圖時屏幕閃爍

    相信很多人在做圖形界面開發(fā)時,常常會遇到屏幕閃爍的情況,當(dāng)然我也不例外,下面我們就來詳細探討下這個問題的解決辦法
    2015-08-08
  • 基于C語言中段錯誤的問題詳解

    基于C語言中段錯誤的問題詳解

    本篇文章是對C語言中段錯誤的問題進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C語言之free函數(shù)以及野指針介紹

    C語言之free函數(shù)以及野指針介紹

    以下是對C語言中的free函數(shù)與野指針進行了詳細的分析介紹,需要的朋友可以參考下
    2013-07-07
  • C++ stack與queue模擬實現(xiàn)詳解

    C++ stack與queue模擬實現(xiàn)詳解

    這篇文章主要給大家介紹了關(guān)于c++stack與queue模擬實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-08-08
  • 使用emacs編寫C語言教程

    使用emacs編寫C語言教程

    這篇文章主要介紹了使用emacs編寫C語言教程,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C++實用庫之DNS解析的實現(xiàn)

    C++實用庫之DNS解析的實現(xiàn)

    DNS解析是一種將域名轉(zhuǎn)換為相應(yīng)的IP地址的過程,本文主要介紹了C++實用庫之DNS解析的實現(xiàn),實現(xiàn)了快速、準(zhǔn)確的域名到IP地址的轉(zhuǎn)換,感興趣的可以了解一下
    2025-03-03
  • C程序讀取鍵盤碼的方法

    C程序讀取鍵盤碼的方法

    這篇文章主要介紹了C程序讀取鍵盤碼的方法,運行時可通過鍵盤按鍵獲取其對應(yīng)的鍵盤碼,文章最后附帶了鍵盤碼與按鍵的對照表,需要的朋友可以參考下
    2014-09-09
  • C++ new與malloc和delete及free動態(tài)內(nèi)存管理及區(qū)別介紹

    C++ new與malloc和delete及free動態(tài)內(nèi)存管理及區(qū)別介紹

    這篇文章主要介紹了深入理解C++中的new/delete和malloc/free動態(tài)內(nèi)存管理,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • C語言關(guān)于注釋的知識點總結(jié)

    C語言關(guān)于注釋的知識點總結(jié)

    在本篇文章里小編給大家分享的是關(guān)于C語言關(guān)于注釋的知識點總結(jié),需要的朋友們可以參考學(xué)習(xí)下。
    2020-02-02
  • C++實現(xiàn)將數(shù)據(jù)寫入Excel工作表的示例代碼

    C++實現(xiàn)將數(shù)據(jù)寫入Excel工作表的示例代碼

    直觀的界面、出色的計算功能和圖表工具,使Excel成為最流行的個人計算機數(shù)據(jù)處理軟件。在本文中,您將學(xué)習(xí)如何使用?Spire.XLS?for?C++?創(chuàng)建?Excel?文檔,以及如何將數(shù)據(jù)寫入?Excel?工作表
    2023-03-03

最新評論

绍兴县| 台东县| 黄浦区| 奉新县| 中山市| 慈利县| 麻栗坡县| 军事| 教育| 广河县| 邢台市| 富平县| 门头沟区| 中宁县| 丰都县| 灌云县| 格尔木市| 天全县| 益阳市| 壶关县| 威信县| 金川县| 漠河县| 加查县| 东台市| 安顺市| 于都县| 无为县| 榕江县| 奉化市| 那坡县| 井陉县| 沂南县| 扎鲁特旗| 嘉禾县| 乐亭县| 长宁区| 贺州市| 麟游县| 石家庄市| 龙州县|