您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“如何用C++在終端上實現猜謎游戲”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“如何用C++在終端上實現猜謎游戲”這篇文章吧。
要跟上本文的步伐,你需要 C++ 和一個編譯器。
在 Linux 上,你可以通過從你的發行版軟件倉庫中安裝 Qt Creator IDE 來獲得你所需要的一切。
在 Fedora、CentOS 或 RHEL 上:
$ sudo dnf install qt-creator
在 Debian、Ubuntu、Chromebook 或類似的系統上:
$ sudo apt install qtcreator
本文并沒有使用 Qt Creator IDE,但它是一個安裝你所需要的一切的簡單方法,對于復雜的 C++ 項目(包括那些帶有 GUI 的項目),它是一個必不可少的工具。在 macOS 或 Windows 上,按照 Qt 網站上的安裝說明進行安裝。
C++ 的核心語言是精簡的。即使是一個簡單的應用程序也需要使用額外的庫。這個應用程序使用 iostream 來獲得對 cout
和 cin
關鍵字的訪問。
另外,確保程序使用 std
命名空間:
#include <iostream> using namespace std;
這并不是絕對必要,但如果不將命名空間設置為 std
,所有來自 iostream
庫的關鍵字都需要一個命名空間前綴。例如,我不能寫作 cout
,而是要寫作 std::cout
。
C++ 中的語句以分號結束。
每個 C++ 應用程序至少需要一個函數。一個 C++ 應用程序的主函數必須稱為 main
,它必須返回一個整數(int
),這符合 POSIX 的期望,即一個進程在成功時返回 0,而在失敗時返回其他值。你可以通過為它提供返回類型和名稱來創建一個新函數。
int main() { // code goes here}
游戲代碼必須首先產生一個隨機數供玩家猜測。在 C++ 中,你可以通過建立一個用于生成偽隨機數的種子來實現。一個簡單的種子就是當前的時間。一旦有了種子,你就可以得到一個在 1 和 100 之間的數字。通過調用 rand
函數,并設置上限值 100 來產生一個從 0 到 99 的隨機數,所以無論選擇了什么數字都要加 1,并將結果分配給一個名為 number
的變量。你還必須聲明一個變量來保存玩家的猜測值。為了清楚起見,我稱這個變量為 guess
。
這個示例代碼還包括一個調試語句,告訴你隨機數到底是什么。這對于猜測游戲來說不是很好,但它使測試速度快了很多。以后,你可以刪除這一行,或者直接在行前面用 //
注釋出來:
srand (time(NULL)); int number = rand() % 100+1; int guess = 0; cout << number << endl; //debug
C++ 中的 do-while
語句以關鍵字 do
開頭,并將你希望 C++ 做的所有事情用括號括起來。用 while
關鍵字結束語句,后面是必須滿足的條件(括號內):
do { // code here} while ( number != guess );
游戲代碼出現在 if
、else if
和 else
語句之間,為玩家提供提示。
首先,用 cout
語句提示玩家猜測。cout
函數將輸出打印到 stdout
上。因為 cout
語句沒有連著 endl
(endline)函數,所以沒有換行。緊接著這個 cout
語句,通過使用 cin
函數告訴 C++ 等待輸入。正如你所猜測的那樣,cin
等待來自 stdin
的輸入。
接下來,程序進入 if
控制語句。如果玩家的猜測大于 number
變量中包含的偽隨機數,那么程序就會打印出一個提示,后面是一個換行符。這就中斷了 if
語句,但 C++ 仍然被困在 do-while
循環中,因為它的條件(number
變量等于 guess
)還沒有滿足。
如果玩家的猜測小于 number
變量中包含的偽隨機數,那么程序就會打印出一個提示,后面是一個換行符。這再次中斷了 if
語句,但程序仍然被困在 do-while
循環中。
當 guess
等于 number
時,最終滿足關鍵條件,觸發 else
語句,do-while
循環結束,程序結束:
do { cout << "Guess a number between 1 and 100: "; cin >> guess; if ( guess > number) { cout << "Too high.\n" << endl; } else if ( guess < number ) { cout << "Too low.\n" << endl; } else { cout << "That's right!\n" << endl; exit(0); } // fi } while ( number != guess );return 0;} // main
你可以用 GCC 構建你的應用程序:
$ g++ -o guess.bin guess.cpp
運行二進制文件試試:
$ ./guess.bin74Guess a number between 1 and 100: 76Too high. Guess a number between 1 and 100: 1Too low. Guess a number between 1 and 100: 74That's right!
成功了!
以上是“如何用C++在終端上實現猜謎游戲”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。