#include stdio.h
成都創(chuàng)新互聯(lián)公司專注于丘北企業(yè)網(wǎng)站建設,成都響應式網(wǎng)站建設,電子商務商城網(wǎng)站建設。丘北網(wǎng)站建設公司,為丘北等地區(qū)提供建站服務。全流程按需定制制作,專業(yè)設計,全程項目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務
#include stdlib.h
#include time.h //用到了time函數(shù)
int main()
{ int i,number;
srand((unsigned) time(NULL)); //用時間做種,每次產(chǎn)生隨機數(shù)不一樣
for (i=0; i50; i++)
{
number = rand() % 101; //產(chǎn)生0-100的隨機數(shù)
printf("%d ", number);
}
return 0;
}
math/rand 中的所有整數(shù)函數(shù)都生成非負數(shù).
示例 main.go
執(zhí)行
同理,需要int64 int32類型的隨機數(shù)只要修改隨機函數(shù)
但是需要注意 math/rand 幾個函數(shù)的取值區(qū)間!如Intn的范圍[0, n)。[0,20),20會取不到
我自己的需求這樣寫已足夠
const NUM int = 100
for i := 0; i NUM; i += 1 {
rand.Seed(int64(i))
fmt.Printf("%d\t", rand.Int63n(int64(NUM)))
}
其實在循環(huán)里面這點時間間隔,納秒也是跟不上的。
還有,你用sleep的方法肯定是不能接受的?。?!
1、首先雙擊程序窗口,跳轉(zhuǎn)到寫代碼的界面。
2、其次輸入偽隨機函數(shù),返回int類型,代碼主要標簽import=1024,自定義默認長度。
3、最后點擊F5即可生成隨機碼。
package?main
import?(
"fmt"
"math/rand"
"time"
)
func?main()?{
for?i?:=?0;?i??20;?i++?{
r?:=?rand.New(rand.NewSource(time.Now().UnixNano()))
//rand.Seed(time.Now().UnixNano())?//以當前納秒數(shù)作為隨機數(shù)種子
n?:=?r.Int63()
fmt.Println(n)
}
}
查了下這樣可以
不知道他內(nèi)部怎么實現(xiàn)的 ? unixnano