2 回答

TA貢獻(xiàn)1812條經(jīng)驗(yàn) 獲得超5個(gè)贊
在C語(yǔ)言中,獲取隨機(jī)數(shù)的函數(shù)為rand()
1 聲明:
int rand(void);
2 頭文件:
stdlib.h
3 功能:
獲取一個(gè)隨機(jī)數(shù)。
4 示例:
int a = rand();//獲取一個(gè)隨機(jī)數(shù)并賦值給a
int b = rand()%100;//獲取一個(gè)0~99的隨機(jī)數(shù),并賦值給b。

TA貢獻(xiàn)1898條經(jīng)驗(yàn) 獲得超8個(gè)贊
編程時(shí)有時(shí)需要隨機(jī)輸入一些數(shù),這是調(diào)用隨機(jī)函數(shù)可以完成此相命令.
# include “stdio.h”
# include “stdlib.h”
# include “time.h” /*需引用的頭文件*/
srand((unsigned)time(NULL)); /*隨機(jī)種子*/
n=rand()%(Y-X+1)+X; /*n為X~Y之間的隨機(jī)數(shù)*/
int rand(void)
函數(shù)int rand( void );返回的是一個(gè)界于0~32767(0x7FFF)之間的偽隨機(jī)數(shù),包括0和32767。
C預(yù)先生成一組隨機(jī)數(shù),每次調(diào)用隨機(jī)函數(shù)時(shí)從指針?biāo)赶虻奈恢瞄_始取值,因此使用rand()重復(fù)運(yùn)行程序產(chǎn)生的隨機(jī)數(shù)都是相同的,可以通過(guò)srand()函數(shù)來(lái)改變指針位置。
void srand( unsigned int seed )
改變隨機(jī)數(shù)表的指針位置(用seed變量控制)。一般配合time(NULL)使用,因?yàn)闀r(shí)間每時(shí)每刻都在改變,產(chǎn)生的seed值都不同。
基于毫秒級(jí)隨機(jī)數(shù)產(chǎn)生方法:
#include<windows.h>
種子設(shè)為:srand(unsigned int seed); /*這個(gè)作用是在讓每次產(chǎn)生隨機(jī)數(shù)不會(huì)是以樣的*/
srand(GetTickCount());
這樣可以
srand((unsigned)time(NULL)); /*隨機(jī)種子*/
n=rand()%(2)+1; /*n為X~Y之間的隨機(jī)數(shù)*/
- 2 回答
- 0 關(guān)注
- 2064 瀏覽
添加回答
舉報(bào)