小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

C中的隨機數(shù)(媽的, 搞了我3個小時)

 skywood 2006-11-04
在devc++4.9.9.2 編譯通過
#include<stdlib.h>   
 #include<time.h>   
 int main()   
 {   
    int   i,stime;   
    srand((unsigned)time(NULL));   
    printf("Ten   random   numbers   form   0   to   1000!\n");   
    for(i=0;i<10;i++)   
    printf("%d\t",rand()%1000);   
    printf("\n");  
  }  
 
 
   rand(void)用于產(chǎn)生一個偽隨機unsigned int 整數(shù)。srand(seed)用于給rand()函數(shù)設(shè)定種子。
于是我把它貼到機器上, 做了一個10次循環(huán), 沒想到每次都生成一摸一樣的10個數(shù), 百思不得其解。。。。。。。。
最后終于弄明白了, 用現(xiàn)在的時間做種, 而time函數(shù)返回值是以秒為單位的, 10個循環(huán)當(dāng)然在1秒以內(nèi)。。。。。。所以才會有這個結(jié)果

BTW, Dev-c++ 4.9.9.2 can not support randomize() & random(int num);
 some body saying:  "
srand()
是用來初始化隨機種子數(shù)的,因為rand的內(nèi)部實現(xiàn)是用線性同余法做的,他不是真的隨機數(shù),只不過是因為其周期特別長,所以有一定的范圍里可看成是隨機的,式子如下 rand = rand*const_1 + c_var;srand函數(shù)就是給它的第一個rand值。
用 int x = rand() % 100;來生成 0 到 100 之間的隨機數(shù)這種方法是不或取的,比較好的做法是: j=(int)(n*rand()/(RAND_MAX+1.0))  // 產(chǎn)生一個0到n之間的隨機數(shù)
 "
 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多