我想取1-100之間的整數!為什么作了一個10次的循環,用random輸出的都是一個數呀?是不是應該輸出10個不同的數呀??我剛學習C++不懂,謝謝大家能幫我做詳細解答!#include <iostream>#include <ctime>#include <cstdlib>using namespace std;int main(){for (int i=0;i<10;i++){randomize();unsigned int r=random(100);cout<<r<<'\t';}return 0;}是這個樣子嗎??不行呀??
2 回答

猛跑小豬
TA貢獻1858條經驗 獲得超8個贊
方法:rand()函數用來產生隨機數,但是,rand()的內部實現是用線性同余法實現的,是偽隨機數,由于周期較長,因此在一定范圍內可以看成是隨機的。
rand()會返回一個范圍在0到RAND_MAX(32767)之間的偽隨機數(整數)。
在調用rand()函數之前,可以使用srand()函數設置隨機數種子,如果沒有設置隨機數種子,rand()函數在調用時,自動設計隨機數種子為1。隨機種子相同,每次產生的隨機數也會相同。
rand()函數需要的頭文件是:<stdlib.h>
rand()函數原型:int rand(void);
使用rand()函數產生1-100以內的隨機整數:int number1 = rand() % 100;
C++中的rand( )應該小寫,需要加載<stdlib.h>頭文件
拓展資料
rand( )函數不是真正的隨機數生成器,而srand()會設置供rand()使用的隨機數種子。如果你在第一次調用rand()之前沒有調用srand(),那么系統會為你自動調用srand()。而使用同種子相同的數調用 rand()會導致相同的隨機數序列被生成。
- 2 回答
- 0 關注
- 1018 瀏覽
添加回答
舉報
0/150
提交
取消