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

基于C語言實現(xiàn)猜數(shù)字游戲

 更新時間:2021年05月10日 14:23:57   作者:~南巷舊人  
這篇文章主要為大家詳細介紹了基于C語言實現(xiàn)猜數(shù)字游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

前言

系統(tǒng)生成一個【1,100】之間數(shù)字,用戶隨便輸入一個整數(shù),如果用戶輸入的數(shù)字比系統(tǒng)生成的數(shù)字小,提示“猜低了”,如果用戶輸入的數(shù)字比系統(tǒng)生成的數(shù)字大提示猜高了,如果相同,提示猜對了。

一、先生成一個【1,100】的隨機整數(shù)

C語言的標準庫中已經(jīng)包含了很多現(xiàn)成的功能,rand可以生成一個隨機整數(shù),可以查閱cplusplus文檔。瀏覽器輸入www.cplusplus.com。cstdlib這是C++風格的寫法,stdlib.h是C語言風格的寫法,C++也可以用stdlib.h.C語言中函數(shù)參數(shù)如果沒有,可以直接寫(),也可以寫作(void),但是返回值不可忽略void,一些老的編譯器例如VC6,函數(shù)的返回值也可以忽略,如果省略返回值,表示返回值類型為int。

由上述文章可以看出,我們要生成【1,100】的隨機整數(shù),是rand()%100+1
注意:這里提示大家:rand這個函數(shù)以后在工作中,要謹慎使用,多線程,rand函數(shù)線程不安全,實際開發(fā)中如果對于隨機數(shù)要求的不嚴格的話,就可以有很多中代替rand的方案來實現(xiàn),例如,可以使用某個變量的地址來代替。

二、提示用戶進行交互

加上一個和用戶交互的菜單。代碼如下:

int menu()
{
 printf("*********************\n");
 printf("歡迎來到猜數(shù)字游戲!\n");
 printf("1.開始游戲\n");
 printf("2.退出游戲\n");
 printf("請輸入您的選擇\n");
 printf("*********************\n");
 int choice = 0;
 scanf("%d", &choice);
 return choice;
}

三、偽隨機和真隨機

偽隨機數(shù)是通過一定算法獲得一個隨機的值,并不是真的隨機。
真隨機數(shù)是伴隨著物理實驗的,比如:拋硬幣、擲骰子、電子元件的噪音、核裂變等,他的結果符合三大特性的。是真實的隨機數(shù)。
當我們就按rand來執(zhí)行程序時,會發(fā)現(xiàn)每次執(zhí)行的隨機數(shù)都是一樣的,這就是偽隨機。那么如何生成真正的隨機數(shù)呢,我們可以使用srand。只需要讓每次執(zhí)行程序的時候,設置的隨機種子不一樣即可,我們就會想到時間,時間是永遠在變化的。計算機里表示時間,正是通過整數(shù)的方式來表示的,叫做時間戳,是很重要的。時間戳是以1970年1月1日0時0分0秒為基準時刻,計算當前時刻和基準時刻的秒數(shù)之差。
time(0)獲取時間戳,需要包含頭文件time.h。time函數(shù)返回類型叫time-t,time本質(zhì)上是一個unsigned long long。所以會需要強制類型轉(zhuǎn)換,把time-t結果強制轉(zhuǎn)換為unsigned int。(這樣做也許會丟數(shù)據(jù),目的是為了讓編譯器不必提示這個警告)。
srand((unsigned int)time(0));

四、整體程序?qū)崿F(xiàn)

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<time.h>

int menu()
{
 printf("*********************\n");
 printf("歡迎來到猜數(shù)字游戲!\n");
 printf("1.開始游戲\n");
 printf("2.退出游戲\n");
 printf("請輸入您的選擇\n");
 printf("*********************\n");
 int choice = 0;
 scanf("%d", &choice);
 return choice;
}
void game()
{
 printf("開始一局猜數(shù)字游戲\n");
 int toGuess = rand() % 100 + 1;
 while (1) {
  int inputNum = 0;
  printf("請猜一個1-100的整數(shù)\n");
  scanf("%d", &inputNum);
  if (inputNum > toGuess) {
   printf("猜高了!\n");
  }
  else if (inputNum < toGuess) {
   printf("猜低了!\n");
  }
  else {
   printf("猜對了!\n");
   break;
  }
 }
}
int main()
{
 srand((unsigned int)time(0));
 int choice = menu();
 while (1) {
  if (choice == 1) {
   game();
   break;
  } else if (choice == 0) {
   printf("goodbye!\n");
   break;
  } else {
   printf("您的輸入有誤!\n");
   }
  }
  system("pause");
  return 0;
}
}

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • C語言二維數(shù)組應用之井字棋游戲

    C語言二維數(shù)組應用之井字棋游戲

    這篇文章主要為大家詳細介紹了C語言二維數(shù)組應用之井字棋游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • 淺談C/C++中的static與extern關鍵字的使用詳解

    淺談C/C++中的static與extern關鍵字的使用詳解

    本篇文章是對C/C++中的static與extern關鍵字的使用進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • 基于OpenCV?差分法實現(xiàn)綠葉識別

    基于OpenCV?差分法實現(xiàn)綠葉識別

    物體識別是圖像處理學在現(xiàn)實生活中較多的應用之一,本文提供了一種相對簡單的思路來實現(xiàn)綠葉識別,適合初學圖像處理的新人研究參考。感興趣的同學可以關注一下
    2021-11-11
  • 淺析C++標準庫元組(tuple)源碼

    淺析C++標準庫元組(tuple)源碼

    這篇文章主要介紹了C++標準庫元組(tuple)源碼,介紹了什么是元組以及用法,并進行了源碼分析,需要的朋友可以參考下
    2015-08-08
  • C語言實現(xiàn)貪吃蛇代碼

    C語言實現(xiàn)貪吃蛇代碼

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)貪吃蛇代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • 詳談C++中虛基類在派生類中的內(nèi)存布局

    詳談C++中虛基類在派生類中的內(nèi)存布局

    下面小編就為大家?guī)硪黄斦凜++中虛基類在派生類中的內(nèi)存布局。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • C++11右值引用和轉(zhuǎn)發(fā)型引用教程詳解

    C++11右值引用和轉(zhuǎn)發(fā)型引用教程詳解

    這篇文章主要介紹了C++11右值引用和轉(zhuǎn)發(fā)型引用教程詳解,需要的朋友可以參考下
    2018-03-03
  • Visual Studio 2019配置qt開發(fā)環(huán)境的搭建過程

    Visual Studio 2019配置qt開發(fā)環(huán)境的搭建過程

    這篇文章主要介紹了Visual Studio 2019配置qt開發(fā)環(huán)境的搭建過程,本文圖文并茂給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • C++函數(shù)指針詳解

    C++函數(shù)指針詳解

    這篇文章主要介紹了C++函數(shù)指針詳解,通過文字描述C++函數(shù)指針基礎概念,內(nèi)涵詳細的代碼實現(xiàn)和解析,希望對你能夠有所幫助
    2021-06-06
  • C++游戲編程之模擬實現(xiàn)鍵盤打字程序

    C++游戲編程之模擬實現(xiàn)鍵盤打字程序

    這篇文章主要介紹了通過C++模擬實現(xiàn)鍵盤打字的功能,文中的示例代碼講解詳細,對我們學習C++有一定的幫助,感興趣的小伙伴可以學習一下
    2021-12-12

最新評論

陕西省| 孝义市| 红桥区| 金华市| 宿松县| 吉木萨尔县| 历史| 论坛| 木兰县| 平泉县| 日照市| 甘孜| 旬邑县| 常德市| 抚宁县| 醴陵市| 衡阳县| 体育| 靖远县| 东明县| 连南| 荥阳市| 象山县| 信阳市| 墨脱县| 墨玉县| 五家渠市| 通城县| 惠来县| 西乌珠穆沁旗| 庄河市| 沙坪坝区| 麻城市| 泸定县| 安丘市| 寿宁县| 高清| 泗水县| 伊春市| 南涧| 区。|