日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

实战小项目_猜数字小游戏

發(fā)布時(shí)間:2023/12/15 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 实战小项目_猜数字小游戏 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

猜數(shù)字游戲

  • 基本功能: 在1-100中間隨機(jī)生成一個(gè)整型數(shù)字,選手進(jìn)行猜測(cè),直到猜中為止,選手每猜錯(cuò)一次從總成績(jī)中扣除3分,初始成績(jī)?yōu)?00,最低成績(jī)?yōu)?;
  • 隨機(jī)數(shù)字生成: 利用函數(shù) rand() ,該函數(shù)會(huì)根據(jù)一個(gè)初始值(隨機(jī)種子)經(jīng)過(guò)一系列的運(yùn)算產(chǎn)生一個(gè)數(shù)字序列,隨機(jī)種子不變則該數(shù)字序列不遍,因此單純利用 rand() 函數(shù)不能完全實(shí)現(xiàn)產(chǎn)生隨機(jī)數(shù),需要借助 srand() 函數(shù)每次來(lái)生成隨機(jī)的初始值(隨機(jī)種子),參數(shù)帶入當(dāng)前的時(shí)間戳(因?yàn)闀r(shí)間戳是一個(gè)每時(shí)刻都不相同的變量),srand(time(0));
  • 時(shí)間戳: 時(shí)間戳是是指從 1970年01月01日00時(shí)0分0秒開(kāi)始 到目前為止的總秒數(shù)
  • 基本思想: 選手輸入的數(shù)字和隨機(jī)生成的數(shù)字進(jìn)行對(duì)比,從而給出"大了!","小了!"的提示,直到選手猜中數(shù)字將會(huì)提示 “猜中了!”

代碼不是特別簡(jiǎn)潔 還需要改進(jìn)

#define _CRT_SECURE_NO_WARNINGS #include "stdio.h" #include "stdlib.h" #include "time.h"// 猜數(shù)游戲,在1-100中間隨機(jī)生成一個(gè)整數(shù),選手進(jìn)行猜數(shù),直到猜中為止 // rand() 函數(shù)產(chǎn)生隨機(jī)數(shù) // srand() 函數(shù)產(chǎn)生隨機(jī)種子 int GetNum(void) {int choice;printf("*********************************\n");printf("*********1-開(kāi)始一局新游戲********\n");printf("*************2-結(jié)束游戲**********\n");printf("*********************************\n");printf("輸入你的選擇:");scanf("%d", &choice);srand(time(0));if (choice == 1) {printf("開(kāi)始輸入你猜的數(shù)字:");return rand() % 100 + 1;}else if (choice == 2) {return 0;}printf("您的輸入非法!!!請(qǐng)重新輸入!!!\n\n\n");return -1; } int main() {// 定義一個(gè)中間數(shù)字為用戶(hù)輸入的數(shù)字 mid ,將 mid 和隨機(jī)數(shù)相比較,從而確定隨機(jī)數(shù)字所在的更小范圍,直到找出隨機(jī)數(shù)// rand() 隨機(jī)數(shù)的產(chǎn)生要依賴(lài)于一個(gè)初始值(隨機(jī)種子),根據(jù)這個(gè)隨機(jī)種子會(huì)產(chǎn)生一個(gè)數(shù)字序列,隨機(jī)種子相同產(chǎn)生的數(shù)字序列相同// 因此為產(chǎn)生一個(gè)完全隨機(jī)的數(shù)字序列,必須每次運(yùn)行函數(shù)的隨機(jī)種子不相同。// 我們利用隨機(jī)種子設(shè)置函數(shù) srand() 引入?yún)?shù) time(0) 獲取當(dāng)前的時(shí)間戳,// 時(shí)間戳總不相同因此生成了完全隨機(jī)的初始值,從而生成完全隨機(jī)的數(shù)字序列。int mid = 1;int randnum;int score = 100;while (mid != 0) {randnum = GetNum();if (randnum != 0 && randnum != -1) {while (1) {scanf("%d", &mid);if (randnum < mid) {printf("大了!\n");score -= 3;}else if (randnum > mid) {printf("小了!\n");score -= 3;}else {printf("猜中了!\n");if (score <= 0) {score = 0;}printf("最終成績(jī)?yōu)?#xff1a;%d 分\n\n\n\n", score);break;}}}else if (randnum == 0) {printf("游戲結(jié)束!!!\n");break;}}system("pause");return 0; }

總結(jié)

以上是生活随笔為你收集整理的实战小项目_猜数字小游戏的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。