c語言用rand() 函數,實現random(int m)


函數rand()是真正的隨機數生成器。而srand()會設置供rand()使用的隨機數種子。

假設你在第一次調用rand()之前沒有調用srand(),那么系統會為你自己主動調用srand()。

注意而使用同種子同樣的數調用 rand()會導致同樣的隨機數序列被生成。

因此我們假設要生成以m為隨機數的種子首先要調用srand();

以下就舉例,生成以100,為種子的隨機數10個,將他們控制在0~100之內.

#include <stdio.h>
int random(int m){
        return rand()%m;//將隨機數控制在0~m-1之間
}
int main(){
        int n=10,i,m=100,s=50;
        srand(s);//設置隨機數種子
        for(i=0;i<n;i++){
                printf("%d ",random(m));
        }
        printf("\n");
        return 0;
}
 
/*常常使用:srand(time(NULL));來生成以當前時間為種子的隨機數,要包括<time.h>*/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM