猜數字遊戲

2021-09-22 22:08:45 字數 937 閱讀 4557

完成猜數字遊戲。

在這我們使用rand()函式生成乙個隨機數。但計算機無法生成真隨機數,這是乙個偽隨機數。

要注意的是所謂的"偽隨機數"指的並不是假的隨機數。其實絕對的隨機數只是一種理想狀態的隨機數,計算機只能生成相對的隨機數即偽隨機數。計算機生 成的偽隨機數既是隨機的又是有規律的 -- 一部份遵守一定的規律,一部份則不遵守任何規律。比如"世上沒有兩片形狀完全相同的樹葉",這體現到了事物的特性 -- 差異性;但是每種樹的葉子都有近似的形狀,這正是事物的共性 -- 規律性。從這個角度講,我們就可以接受這樣的事實了:計算機只能產生偽隨機數而不是絕對的隨機數。

系統在呼叫rand()之前都會自動呼叫srand(),如果使用者在rand()之前曾呼叫過srand()給引數seed指定了乙個值,那麼 rand()就會將seed的值作為產生偽隨機數的初始值;而如果使用者在rand()前沒有呼叫過srand(),那麼系統預設將1作為偽隨機數的初始 值。如果給了乙個定值,那麼每次rand()產生的隨機數序列都是一樣的~~

公式rand()%(b-a),是求範圍隨機數的計算公式,%是做求餘運算,正整數對n求餘的範圍肯定是在0~n-1之間,也就是rand()%(b-a)的範圍是0~b-a-1,然後加上a,也就是範圍變成了a~b-1。 而rand()%90+10=rand()%(100-10)+10,它的範圍就是[10,10)

#include #include void menu()

void main()

else if(select == 1)

else if(num < randnum)

else

}}else

return 0;

}

寫**時,遇到選擇分支,一定要考慮周全,要做到面面俱到。 

猜數字遊戲

問題描述 猜數字遊戲 隨機出乙個兩位數,然後讓你猜,直到猜對為止。猜對後可以提示選擇是否再玩一次。include include using namespace std int main srand unsigned int time null int num rand 90 10 隨機出乙個兩位數...

猜數字遊戲

author 徐權 data 2015728 function 猜數字遊戲 實用平台 vs2012及以上 如果要移植到其他平台scanf s和puts s 應改為scanf和puts即可 include include include include define n 5 定義陣列大小,從而決定猜的...

猜數字遊戲

初次見到題目,覺得很簡單,可是仔細敲 時候卻發現根本無法處理如下情況 正確序列 1,2,3,4 猜測序列 1,1,1,1 我選擇用字串儲存正確的,然後如果對應上就把它變成字母,下一次就不會算他了,可是如果這樣子 正確 1,2,3,4 錯誤 2,3,3,4 錯誤的3算了,正確卻沒有算,這樣顯然不符合題...