前言
我們?cè)诰幊虒?shí)現(xiàn)算法的過(guò)程中,往往需要使用到隨機(jī)數(shù)。由于計(jì)算機(jī)是一臺(tái)以邏輯為基礎(chǔ)的機(jī)器,沒(méi)法做到真正的隨機(jī)(大概量子計(jì)算機(jī)可以?)。所以計(jì)算機(jī)生成的是偽隨機(jī)數(shù),供我們使用。
我們使用C語(yǔ)言的rand函數(shù),生成的也是偽隨機(jī)數(shù)。
c語(yǔ)言之rand函數(shù)的使用
1、寫(xiě)入頭文件
1
|
#include <stdlib.h> #include <stdio.h> #include <time.h> |
2、變量的定義
1
|
void main( void ) { int i,k; |
3、srand( (unsigned)time( NULL ) ); /*選取種子文件*/
4、for( i = 0; i <20;i++ ) /*循環(huán)控制20個(gè)隨機(jī)數(shù)的生成*/ { k=rand()%100; /*儲(chǔ)存隨機(jī)數(shù)*/ printf( ” k=%d\n”, k ); /*輸出隨機(jī)數(shù)*/ } }
1、此為隨機(jī)函數(shù)的一種產(chǎn)生方法
2、如果只需一個(gè),那么可以省略循環(huán)控制
一個(gè)簡(jiǎn)單的示范如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#include <stdio.h> #include <stdlib.h> #include <time.h> int main( int argc, char ** argv) { // 以機(jī)器當(dāng)前的時(shí)間來(lái)構(gòu)造生成偽隨機(jī)數(shù)的"種子" 。 srand ((unsigned int ) time (NULL)); int i; // 打印10個(gè)偽隨機(jī)數(shù) for (i = 0; i < 10; i++) { printf ( "%d " , rand ()); } printf ( "\n" ); system ( "pause" ); return 0; } |
總結(jié)
以上就是關(guān)于C語(yǔ)言中rand函數(shù)的使用的全部?jī)?nèi)容,希望本文對(duì)大家日常使用C語(yǔ)言的時(shí)候能有所幫助。