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

C語言實現(xiàn)猜數(shù)字小游戲的示例代碼

 更新時間:2022年10月26日 17:05:44   作者:蝸牛牛啊  
猜數(shù)字小游戲是我們小時候喜歡我們一個經(jīng)典小游戲。這篇文章將利用C語言中的循環(huán)語句、分支語句和函數(shù)實現(xiàn)這一游戲,需要的可以參考一下

一、猜數(shù)字小游戲

使用循環(huán)語句、分支語句和函數(shù)實現(xiàn),游戲內(nèi)容為輸入0~100之間的數(shù)字,根據(jù)提示信息判斷自己猜的數(shù)字和隨機生成的數(shù)字哪個大哪個小,并根據(jù)提示信息輸入合適的數(shù)字以便更快的通過游戲。

1.演示效果

2.完整代碼

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
void menu()//菜單
{
	printf("************************\n");
	printf("**歡迎來到猜數(shù)字小游戲**\n");
	printf("****  1.開始游戲   *****\n");
	printf("****  2.結(jié)束游戲   *****\n");
	printf("************************\n");
}
void game()
{
	int ret = rand() % 100 + 1;//生成0~100之間的隨機數(shù)
	int guess = 0;
	int i = 0;
	while (guess != ret)//當猜的數(shù)字和rand隨機生成的數(shù)字相同時,循環(huán)終止
	{
		printf("請輸入你要猜的數(shù)字(0~100):");
		scanf("%d", &guess);
		if (guess > ret)
		{
			printf("猜大了!\n");
		}
		else if (guess < ret) {
			printf("猜小了!\n");
		}
		else
		{
			printf("恭喜你,猜對了!\n");
			break;
		}
	}
}
int main()
{
	srand((unsigned int)time(NULL));//生成不同的數(shù)用來初始化rand的初始值
	int input = 0;
	do {
		menu();//菜單函數(shù)
		printf("請選擇>:");
		scanf("%d", &input);
		switch (input)
		{
		case 1:
			game();//調(diào)用game()函數(shù)
			break;
		case 2:
			printf("游戲結(jié)束!");
			break;
		default:
			printf("選擇錯誤,請重新選擇!\n");
			break;
		}
	} while (input != 2);
	return 0;
}

二、代碼解析

1.游戲主體函數(shù)

void game()
{
    int ret = rand() % 100 + 1;//生成0~100之間的隨機數(shù)
    int guess = 0;
    int i = 0;
    while (guess != ret)//當猜的數(shù)字和rand隨機生成的數(shù)字相同時,循環(huán)終止
    {
        printf("請輸入你要猜的數(shù)字(0~100):");
        scanf("%d", &guess);
        if (guess > ret)
        {
            printf("猜大了!\n");
        }
        else if (guess < ret) {
            printf("猜小了!\n");
        }
        else
        {
            printf("恭喜你,猜對了!\n");
            break;
        }
    }
}

在C語言中,rand函數(shù)可以用來產(chǎn)生隨機數(shù),但并不是真正意義上的隨機數(shù),它是返回介于0~RAND_MAX之間的偽隨機整數(shù),但是在系統(tǒng)正常使用的情況下,產(chǎn)生的偽隨機整數(shù)是固定的。為了初始化的值不同,C語言提供了srand函數(shù)。

2.菜單函數(shù)

void menu()//菜單
{
    printf("************************\n");
    printf("**歡迎來到猜數(shù)字小游戲**\n");
    printf("****  1.開始游戲   *****\n");
    printf("****  2.結(jié)束游戲   *****\n");
    printf("************************\n");
}

3.頭文件以及主函數(shù)

#include <stdio.h>
#include <time.h>
#include <stdlib.h>
int main()
{
    srand((unsigned int)time(NULL));//生成不同的數(shù)用來初始化rand的初始值
    int input = 0;
    do {
        menu();//菜單函數(shù)
        printf("請選擇>:");
        scanf("%d", &input);
        switch (input)
        {
        case 1:
            game();//調(diào)用game()函數(shù)
            break;
        case 2:
            printf("游戲結(jié)束!");
            break;
        default:
            printf("選擇錯誤,請重新選擇!\n");
            break;
        }
    } while (input != 2);
    return 0;
}

srand((unsigned int)time(NULL))中調(diào)用srand函數(shù)需要頭文件<stdlib.h>,同時使用系統(tǒng)時間來初始化需要包含頭文件<time.h>,srand函數(shù)一般使用時間戳,采用系統(tǒng)時間來初始化,使用time函數(shù)來獲得系統(tǒng)時間,然后將time_t型數(shù)據(jù)轉(zhuǎn)化為(unsigned)型再傳給srand函數(shù)。這樣使用rand時,每次產(chǎn)生的隨機數(shù)都不相同。

以上就是C語言實現(xiàn)猜數(shù)字小游戲的示例代碼的詳細內(nèi)容,更多關于C語言猜數(shù)字游戲的資料請關注腳本之家其它相關文章!

相關文章

  • 利用OpenCV實現(xiàn)綠幕視頻背景替換

    利用OpenCV實現(xiàn)綠幕視頻背景替換

    這篇文章主要介紹了如何利用OpenCV實現(xiàn)綠幕視頻背景替換功能,文中的示例代碼講解詳細,對我們學習OpenCV有一定的幫助,感興趣的可以學習一下
    2022-01-01
  • C語言實現(xiàn)經(jīng)典24點紙牌益智游戲

    C語言實現(xiàn)經(jīng)典24點紙牌益智游戲

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)經(jīng)典24點紙牌益智游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • 解析C/C++值傳遞和址傳遞的區(qū)別

    解析C/C++值傳遞和址傳遞的區(qū)別

    今天通過本文給大家介紹C/C++值傳遞和址傳遞的區(qū)別講解,本文通過實例代碼圖文相結(jié)合給大家介紹的非常詳細,需要的朋友參考下吧
    2021-10-10
  • 解析內(nèi)存對齊 Data alignment: Straighten up and fly right的詳解

    解析內(nèi)存對齊 Data alignment: Straighten up and fly right的詳解

    對于所有直接操作內(nèi)存的程序員來說,數(shù)據(jù)對齊都是很重要的問題.數(shù)據(jù)對齊對你的程序的表現(xiàn)甚至能否正常運行都會產(chǎn)生影響
    2013-05-05
  • C++中四種對象生存期和作用域以及static的用法總結(jié)分析

    C++中四種對象生存期和作用域以及static的用法總結(jié)分析

    以下是對C++中四種對象生存期和作用域以及static的用法進行了詳細的介紹,需要的朋友可以過來參考下
    2013-09-09
  • 淺談C++中virtual的三種用法

    淺談C++中virtual的三種用法

    這篇文章主要介紹了淺談C++中virtual的三種用法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • QT編寫地圖實現(xiàn)設備點位的示例代碼

    QT編寫地圖實現(xiàn)設備點位的示例代碼

    在地圖應用的相關項目中,在地圖上標識一些設備點,并對點進行交互這個功能用的最多的,于是需要一套機制可以動態(tài)的添加、刪除、清空、重置。本文將詳細介紹這些功能如何實現(xiàn),需要的可以參考一下
    2022-01-01
  • C++逆向分析移除鏈表元素實現(xiàn)方法詳解

    C++逆向分析移除鏈表元素實現(xiàn)方法詳解

    這篇文章主要介紹了C++實現(xiàn)LeetCode(203.移除鏈表元素),本篇文章通過逆向分析的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2022-11-11
  • C++利用ImGUI繪制D3D外部菜單

    C++利用ImGUI繪制D3D外部菜單

    ImGUI 它是與平臺無關的C++輕量級跨平臺圖形界面庫,沒有任何第三方依賴,可以將ImGUI的源碼直接加到項目中使用。本文將利用ImGUI繪制D3D外部菜單,需要的可以參考一下
    2022-09-09
  • OpenCV 視頻中火焰檢測識別實踐

    OpenCV 視頻中火焰檢測識別實踐

    本文主要介紹了OpenCV 視頻中火焰檢測識別,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09

最新評論

三台县| 阳江市| 巴林右旗| 崇左市| 广元市| 常熟市| 宁化县| 南岸区| 栖霞市| 任丘市| 奈曼旗| 西贡区| 蓬安县| 蚌埠市| 邯郸市| 平阴县| 安新县| 阜宁县| 甘肃省| 天长市| 巩留县| 疏勒县| 许昌市| 奎屯市| 连城县| 青浦区| 得荣县| 文安县| 齐河县| 通州市| 策勒县| 资源县| 长宁区| 双桥区| 乳源| 佛山市| 永清县| 东乡县| 潢川县| 南江县| 灌云县|