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

C語言詳解實現(xiàn)猜數(shù)字游戲步驟

 更新時間:2022年07月08日 09:49:14   作者:hania_w  
猜數(shù)字是興起于英國的益智類小游戲,起源于20世紀中期,一般由兩個人或多人玩,也可以由一個人和電腦玩。游戲規(guī)則為一方出數(shù)字,一方猜,今天我們來實現(xiàn)這個游戲案例

前言

本文詳細介紹了猜數(shù)字游戲的具體實現(xiàn)邏輯

一、猜數(shù)字游戲是什么

1、電腦自動生成一個1-100以內(nèi)的數(shù)字

2、我們輸入一個我們猜的數(shù)字

3、如果我們猜的數(shù)字比電腦隨機生成的數(shù)字大,那么輸出(猜大了)

4、如果我們猜的數(shù)字比電腦隨機生成的數(shù)字小,那么輸出(猜小了)

5、如此循環(huán)往復(fù),猜到正確的數(shù)字之后游戲結(jié)束

二、使用步驟

  • 1.首先應(yīng)該打印菜單

代碼如下

void menu()
{
	printf("*********************\n");
	printf("***** 1. play *******\n");
	printf("***** 0. exit *******\n");
	printf("*********************\n");
}
int main()
{
	menu();
	printf("請選擇:>");
	int input = 0;
	while (input)
	{
		switch (input)
		{
		case 1:
	        printf("游戲開始");
	        game()//選擇開始游戲之后,進入我們玩游戲的一個邏輯
			break;
		case 0:
			printf("退出游戲");
			break;
		default:
			printf("輸入錯誤,請重新輸入!");
			break;
		}
	}
	return 0;
}

選擇1,開始游戲

選擇0,游戲結(jié)束

  • 2.打印我們的game()函數(shù)來實現(xiàn)我們的游戲具體邏輯

代碼如下:

void game()
{
	int guess = 0;
	int ret = rand() % 100 + 1;//限制我們得到的數(shù)字為1-100之間的數(shù)字
	while (1)//因為猜數(shù)字是一個多次的過程,因此需要一個循壞來解決
	{
		printf("請輸入你猜的數(shù)字:>");
		scanf("%d", &guess);
		//將我們猜的數(shù)字與電腦隨機生的數(shù)字作對比
		if (guess < ret)
		{
		//如果我們猜的數(shù)字比電腦的數(shù)字要小,輸出猜小了
			printf("猜小了!\n");
		}
		else if (guess > ret)
		{
		//如果我們猜的數(shù)字比電腦的數(shù)字要大,輸出猜大了
			printf("猜大了!\n");
		}
		else
		{
		//數(shù)字猜對了,輸出猜對了
			printf("猜對了!\n");
			break;
		}
	}
}

注:

如果使用rand()函數(shù),必須先調(diào)用srand()函數(shù),再使用時間戳來形成一個隨機數(shù)字。

我們調(diào)用時間戳,因此需要包含頭文件#include<time.h>

【時間戳】的概念:一個能表示一份數(shù)據(jù)在某個特定時間之前已經(jīng)存在的、 完整的、 可驗證的數(shù)據(jù),通常是一個字符序列,唯一地標識某一刻的時間。

因此我們的main()函數(shù)部分就變成了如下代碼所示:

int main()
{
	menu();
	printf("請選擇:>");
	int input = 0;
	int n = 0;
	scanf("%d", &input);
	srand((unsigned int)time(NULL));
	//使用srand函數(shù),接著使用時間戳,形成一個無符號整數(shù)
	//我們調(diào)用時間戳,因此需要包含頭文件#include<time.h>
	while (input)
	{
		switch (input)
		{
		case 1:
			game();//猜數(shù)字游戲的的邏輯
			break;
		case 0:
			printf("退出游戲");
			break;
		default:
			printf("輸入錯誤,請重新輸入!");
			break;
		}
	}
	return 0;
}

總結(jié)

本文的重點是對于時間戳的理解,以及猜數(shù)字游戲的邏輯

下面是【猜數(shù)字游戲】的全部代碼

猜數(shù)字游戲1-100
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
void game()
{
	int guess = 0;
	int ret = rand() % 100 + 1;//限制我們得到的數(shù)字為1-100之間的數(shù)字
	//printf("%d",ret);
	while (1)
	{
		printf("請輸入你猜的數(shù)字:>");
		scanf("%d", &guess);
		if (guess < ret)
		{
			printf("猜小了!\n");
		}
		else if (guess > ret)
		{
			printf("猜大了!\n");
		}
		else
		{
			printf("猜對了!\n");
			break;
		}
	}
}
void menu()
{
	printf("*********************\n");
	printf("***** 1. play *******\n");
	printf("***** 0. exit *******\n");
	printf("*********************\n");
}
int main()
{
	menu();
	printf("請選擇:>");
	int input = 0;
	int n = 0;
	scanf("%d", &input);
	srand((unsigned int)time(NULL));
	while (input)
	{
		switch (input)
		{
		case 1:
			game();//猜數(shù)字的邏輯
			break;
		case 0:
			printf("退出游戲");
			break;
		default:
			printf("輸入錯誤,請重新輸入!");
			break;
		}
	}
	return 0;
}

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

相關(guān)文章

  • C++詳細講解對象的構(gòu)造

    C++詳細講解對象的構(gòu)造

    當(dāng)在參數(shù)化構(gòu)造函數(shù)中聲明對象時,必須將初始值作為參數(shù)傳遞給構(gòu)造函數(shù)。對象聲明的常規(guī)方法可能不起作用。構(gòu)造函數(shù)可以顯式或隱式調(diào)用,讓我們一起了解對象的構(gòu)造
    2022-04-04
  • AVX2指令集優(yōu)化整形數(shù)組求和算法

    AVX2指令集優(yōu)化整形數(shù)組求和算法

    這篇文章主要為大家介紹了AVX2指令集優(yōu)化整形數(shù)組求和算法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • C++深入分析回顧函數(shù)重載

    C++深入分析回顧函數(shù)重載

    C++ 允許多個函數(shù)擁有相同的名字,只要它們的參數(shù)列表不同就可以,這就是函數(shù)的重載(Function Overloading),借助重載,一個函數(shù)名可以有多種用途
    2022-06-06
  • 簡單實現(xiàn)C語言2048游戲

    簡單實現(xiàn)C語言2048游戲

    這篇文章主要為大家詳細介紹了簡單實現(xiàn)C語言2048游戲,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • C++實現(xiàn)圖書管理系統(tǒng)(文件操作與類)

    C++實現(xiàn)圖書管理系統(tǒng)(文件操作與類)

    這篇文章主要為大家詳細介紹了C++實現(xiàn)圖書管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 詳解C++編程中斷言static_assert的使用

    詳解C++編程中斷言static_assert的使用

    這篇文章主要介紹了C++編程中斷言static_assert的使用,斷言在debug時非常有用,是C++入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
    2016-01-01
  • 通過一個小例子來簡單理解C語言中的內(nèi)存空間管理

    通過一個小例子來簡單理解C語言中的內(nèi)存空間管理

    這篇文章主要介紹了通過一個小例子來簡單理解C語言中的內(nèi)存空間管理,涉及到堆和棧等數(shù)據(jù)結(jié)構(gòu)的基本知識,需要的朋友可以參考下
    2015-11-11
  • 在Vitis?IDE中如何使用第三方庫?libtiff?保存?tiff?文件

    在Vitis?IDE中如何使用第三方庫?libtiff?保存?tiff?文件

    這篇文章主要介紹了在Vitis?IDE中如何使用第三方庫?libtiff?保存?tiff?文件,本文通過圖文實例相結(jié)合給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • 利用Matlab復(fù)刻兩款粒子愛心動畫效果

    利用Matlab復(fù)刻兩款粒子愛心動畫效果

    最近電視劇《點燃我,溫暖你》大火,蹭一下熱度,發(fā)一下MATLAB畫愛心的代碼,寫的比較隨意,大家可以自行調(diào)整粒子大小和顏色啥的
    2022-11-11
  • C++11智能指針之weak_ptr詳解

    C++11智能指針之weak_ptr詳解

    這篇文章主要介紹了 C++11智能指針之weak_ptr詳解,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06

最新評論

珠海市| 探索| 化隆| 资源县| 临潭县| 长春市| 安福县| 平远县| 金沙县| 河津市| 凉城县| 长海县| 沁水县| 甘孜| 东光县| 当阳市| 峨山| 亚东县| 阳高县| 延寿县| 大理市| 南岸区| 略阳县| 新野县| 桦南县| 重庆市| 库尔勒市| 江门市| 调兵山市| 平塘县| 丽水市| 施甸县| 绥中县| 五指山市| 永吉县| 萨迦县| 从化市| 阿巴嘎旗| 女性| 辽源市| 英德市|