C++實(shí)現(xiàn)簡(jiǎn)單猜數(shù)字小游戲
本文實(shí)例為大家分享了C++實(shí)現(xiàn)簡(jiǎn)單猜數(shù)字小游戲的具體代碼,供大家參考,具體內(nèi)容如下
一、隨機(jī)數(shù)
本文采用time(0)作為srand()函數(shù)的種子生成隨機(jī)數(shù),time(0)為1970年1月1日0時(shí)0分0秒到此時(shí)的秒數(shù)。本文隨機(jī)數(shù)范圍控制在0~100,可根據(jù)自己需求進(jìn)行更改。
二、次數(shù)
本文代碼中times代表次數(shù),可根據(jù)自己需求進(jìn)行更改。
三、勝負(fù)條件
數(shù)字猜對(duì)即為勝利,次數(shù)耗盡前仍未猜中即為失敗,結(jié)束后繼續(xù)游玩請(qǐng)輸入1,退出游戲輸入其他任意字符。(本文設(shè)置游戲在輸入正確范圍的數(shù)字后才會(huì)開始,輸入錯(cuò)誤范圍的數(shù)字仍會(huì)減少次數(shù))
四、代碼
#include<iostream> #include<cstdlib> #include<ctime> using namespace std; int main() { ? ?int num1 = 0; ? ?int num2 = 0; ? ?int num3 = 1; ? ?int times = 7; ? ? while (num3 == 1) ? ?{ ? ? ? ? times = 7; ? ? ? ?srand((unsigned int)time(NULL)); ? ? ? ?num1 = rand() % 100; ? ? ? ?cout << "游戲開始,請(qǐng)輸入你的猜測(cè)結(jié)果,共"<<times<<"次機(jī)會(huì),數(shù)字范圍為0~100:" << endl; ? ? ? ?cin >> num2; ? ? ? ?while (num2 > 100 || num2 < 0) ? ? ? ?{ ? ? ? ? ? ?cout << "輸入錯(cuò)誤,請(qǐng)重新輸入0~100的數(shù)字:" << endl; ? ? ? ? ? ?cin >> num2; ? ? ? ?} ? ? ? ?times -= 1; ? ? ? ?cout << "游戲正式開始"<< endl; ? ? ? ?while (1) ? ? ? ?{ ? ? ? ? ? ?if (times == 0) ? ? ? ? ? ?{ ? ? ? ? ? ? ? ?cout << "次數(shù)用盡,游戲失敗" << endl; ? ? ? ? ? ? ? ?break; ? ? ? ? ? ?} ? ? ? ? ? ?if (num2 > num1) ? ? ? ? ? ?{ ? ? ? ? ? ? ? ?cout << "你猜測(cè)的數(shù)字過(guò)大,剩余次數(shù):"<<times<<",請(qǐng)重新輸入:" << endl; ? ? ? ? ? ? ? ?cin >> num2; ? ? ? ? ? ? ? ?times -= 1; ? ? ? ? ? ?} ? ? ? ? ? ?if (num2 < num1) ? ? ? ? ? ?{ ? ? ? ? ? ? ? ?cout << "你猜測(cè)的數(shù)字過(guò)小,剩余次數(shù):" << times << ",請(qǐng)重新輸入:" << endl; ? ? ? ? ? ? ? ?cin >> num2; ? ? ? ? ? ? ? ?times -= 1; ? ? ? ? ? ?} ? ? ? ? ? ?if (num2 == num1) ? ? ? ? ? ?{ ? ? ? ? ? ? ? ?cout << "猜對(duì)了,數(shù)字為" << num1 << endl; ? ? ? ? ? ? ? ?break; ? ? ? ? ? ?} ? ? ? ? ? ?if (num2 > 100 || num2 < 0) ? ? ? ? ? ?{ ? ? ? ? ? ? ? ?cout << "請(qǐng)輸入正確范圍的數(shù)字,剩余次數(shù):" << times << ",請(qǐng)重新輸入:" << endl; ? ? ? ? ? ? ? ?cin >> num2; ? ? ? ? ? ? ? ?times -= 1; ? ? ? ? ? ?} ? ? ? ?} ? ? ? ? ? ? ?? ? ? ? ?cout << "繼續(xù)游玩請(qǐng)輸入1,退出游戲輸入其他任意字符" << endl; ? ? ? ?cin >> num3; ? ?} ? ? system("pause"); ? ? return ?0; }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
QT已有項(xiàng)目導(dǎo)入工程時(shí)注意事項(xiàng)圖文詳解
QT開發(fā)這幾年大大小小項(xiàng)目做了不少,花了點(diǎn)時(shí)間對(duì)知識(shí)點(diǎn)總結(jié)整合了一部分,下面這篇文章主要給大家介紹了關(guān)于QT已有項(xiàng)目導(dǎo)入工程時(shí)注意事項(xiàng)的相關(guān)資料,需要的朋友可以參考下2023-11-11C語(yǔ)言實(shí)現(xiàn)超市信息管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)超市信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03C++線程優(yōu)先級(jí)SetThreadPriority的使用實(shí)例
這篇文章主要介紹了C++線程優(yōu)先級(jí)SetThreadPriority的使用實(shí)例,較為詳細(xì)的講述了C++線程及其優(yōu)先級(jí)的用法,需要的朋友可以參考下2014-10-10C語(yǔ)言圖書管理系統(tǒng)實(shí)驗(yàn)
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言圖書管理系統(tǒng)實(shí)驗(yàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03C++雙向鏈表實(shí)現(xiàn)簡(jiǎn)單通訊錄
這篇文章主要為大家詳細(xì)介紹了C++雙向鏈表實(shí)現(xiàn)簡(jiǎn)單通訊錄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-05-05C語(yǔ)言詳解strcmp函數(shù)的分析及實(shí)現(xiàn)
strcmp函數(shù)語(yǔ)法為“int strcmp(char *str1,char *str2)”,其作用是比較字符串str1和str2是否相同,如果相同則返回0,如果不同,前者大于后者則返回1,否則返回-12022-05-05純C語(yǔ)言:遞歸二進(jìn)制轉(zhuǎn)十進(jìn)制源碼分享
這篇文章主要介紹了純C語(yǔ)言:遞歸二進(jìn)制轉(zhuǎn)十進(jìn)制源碼,有需要的朋友可以參考一下2014-01-01解析C++中四種強(qiáng)制類型轉(zhuǎn)換的區(qū)別詳解
本篇文章是對(duì)C++中四種強(qiáng)制類型轉(zhuǎn)換的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05