函数一:int rand(void);
从srand (seed)中指定的seed开始,返回一个[seed, RAND_MAX(0x7fff))间的随机整数。 rand()在每次被调用的时候,它会查看:
1) 如果用户在此之前调用过srand(seed),给seed指定了一个值,那么它会自动调用 srand(seed)一次来初始化它的起始值。
2) 如果用户在此之前没有调用过srand(seed),它会自动调用srand(1)一次。
函数二:void srand(unsigned seed);
参数seed是rand()的种子,用来初始化rand()的起始值。
主要由以下几种情况:
1)不指定seed和指定seed为1的时候,两种情况下每次运行输出都一样。
2)指定seed为别的整数值时,每次运行结果一样,但是不同于seed不指定和指定为1的随机数。
3)指定seed为当前系统流逝了的时间(单位为秒):time_t time(0): 每次运行结果将不一样,因为每次启动程序的时刻都不同
4)用rand() / double(RAND_MAX)可以取得0~1之间的浮点数;
rand() /(double)(RAND_MAX/10) 可以取得1-10的浮点数;
每次结果都不同。
从srand (seed)中指定的seed开始,返回一个[seed, RAND_MAX(0x7fff))间的随机整数。 rand()在每次被调用的时候,它会查看:
1) 如果用户在此之前调用过srand(seed),给seed指定了一个值,那么它会自动调用 srand(seed)一次来初始化它的起始值。
2) 如果用户在此之前没有调用过srand(seed),它会自动调用srand(1)一次。
函数二:void srand(unsigned seed);
参数seed是rand()的种子,用来初始化rand()的起始值。
主要由以下几种情况:
1)不指定seed和指定seed为1的时候,两种情况下每次运行输出都一样。
2)指定seed为别的整数值时,每次运行结果一样,但是不同于seed不指定和指定为1的随机数。
3)指定seed为当前系统流逝了的时间(单位为秒):time_t time(0): 每次运行结果将不一样,因为每次启动程序的时刻都不同
4)用rand() / double(RAND_MAX)可以取得0~1之间的浮点数;
rand() /(double)(RAND_MAX/10) 可以取得1-10的浮点数;
每次结果都不同。