真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

隨機函數(shù)a到bc語言 abc語言

如何 在c語言中 給數(shù)組賦隨機值

#includestdio.h

創(chuàng)新互聯(lián)公司專注于新民網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供新民營銷型網(wǎng)站建設,新民網(wǎng)站制作、新民網(wǎng)頁設計、新民網(wǎng)站官網(wǎng)定制、微信小程序定制開發(fā)服務,打造新民網(wǎng)絡公司原創(chuàng)品牌,更為您提供新民網(wǎng)站排名全網(wǎng)營銷落地服務。

#includestdlib.h //準備使用隨機生成函數(shù)

#includetime.h //為了給隨機函數(shù)指定每次不同的種子值,準備使用時間函數(shù)

#define N 100

void main() { int a[N],i;

srand((unsigned int)time(NULL)); //取當前時間當隨機數(shù)種子

for ( i=0;iN;i++ ) a[i]=rand()%100+1; //生成隨機數(shù)范圍在[1,100]區(qū)間

for ( i=0;iN;i++ ) printf("%d ",a[i]); printf("\n");

}

rand()函數(shù)生成隨機數(shù)區(qū)間為[0,65535]

如果要生成[a,b]之間的隨機數(shù):rand()%(b-a+1)+a

rand()%100生成隨機數(shù)范圍[0,99]

rand()%100+1生成[1,100]

C語言產(chǎn)生3個隨機數(shù)是:srand(time(NULL)); a=rand(); b=rand()

srand(time(NULL));

是設置隨機種子,種子不同,每次運行時,生成的

隨機數(shù)

序列不同,種子相同,則得到的序列是相同的。

time(NULL)是獲得當前時間(以秒為單位),這樣,在不同的時間去運行程序,則會得到不同的

隨機序列

,這樣,每次得到的a

b

c是不相同的,如果不加這句,則每次都會得到相同的一組數(shù)據(jù)。

c語言怎么使用隨機函數(shù)rand編寫一個猜數(shù)字的游戲程序?

#include stdio.h

#include stdlib.h

#include time.h

#define N 10

main()

{

int i,a,b;

srand(time(0)); /*設置種子,并生成偽隨機序列*/

while(~scanf("%d",b))

{

for(i=0;iN;++i) rand()%10;

a = rand()%100;

while(1)

{

if(a == b) {puts(" 恭喜你 猜對了 !\n***************\n"); break;}

else if(a b) puts("你輸入的數(shù) 小了!");

else puts("你輸入的數(shù) 大了!");

scanf("%d",b);

}

}

system("pause");

}

C語言求解隨機函數(shù)random

vc6.0下運行:

#include stdio.h

#include stdlib.h

#include time.h

void main()

{

int a[101],b[101]={0},i,j,k=0,t=0;

srand(time(0));

for (i=0;i100;i++)

{

a[i] = rand()%90 + 10; //產(chǎn)生10~99的整數(shù)

if (a[i] % 2 == 0)

{

k++;

b[t++] = a[i];

}

}

printf("未排序時數(shù)組b的元素:\n");

for (t=0,i=0;ik;i++)

{

printf("%d ",b[i]);

t++;

if (t % 10 == 0)

printf("\n");

}

printf("\n\n");

//排序

for (i=0;ik-1;i++)

{

for (j=k-2;j=i;j--)

{

if (b[j] b[j+1])

{

t = b[j];

b[j] = b[j+1];

b[j+1] = t;

}

}

}

printf("排序后數(shù)組b的元素:\n");

for (t=0,i=0;ik;i++)

{

printf("%d ",b[i]);

t++;

if (t % 10 == 0)

printf("\n");

}

printf("\n");

}

關于C語言函數(shù)調(diào)用及產(chǎn)生隨機數(shù)

你這樣做是以系統(tǒng)時間為種子,在不同的系統(tǒng)時間之內(nèi)會產(chǎn)生不同的隨機數(shù),同一時間當然一樣。并且把他縮短到100的范圍之內(nèi),就是說即使前后兩次產(chǎn)生的一個是1001,1999,他們也都顯示的結果一樣為10。程序本身運行的時間可算短之又短,所以這這么短的時間那產(chǎn)生的機會可認為種子一樣。你可以邊調(diào)試,邊看,兩次運行的是不一樣的。(調(diào)試時候執(zhí)行到那系統(tǒng)時間存在明顯差別)

C語言中如何定義一個從1~7的隨機數(shù)。

在C語言中怎么產(chǎn)生隨機數(shù)呢?

rand()函數(shù)可以用來產(chǎn)生隨機數(shù),但是這不是真真意義上的隨機數(shù),是一個偽隨機數(shù)。這是根據(jù)一個數(shù),我們可以稱它為 種 了,為基準以某個遞推公式推算出來的一系數(shù),當這系列數(shù)很大的時候,就符合正態(tài)公布,從而相當于產(chǎn)生了隨機數(shù),但這不是真正的隨機數(shù)。當計算機正常開機后,這個種子的值是定了的(也就是說你將產(chǎn)生的隨機數(shù)已經(jīng)定了,每次運行都產(chǎn)生的是相同的隨機數(shù)),除非你破壞了系統(tǒng)。

為了改變這個種子的值,C提供了 srand()函數(shù),它的原形是void srand( int a)。

初始化隨機產(chǎn)生器既rand()函數(shù)的初始值,即使把種子的值改成a; 從這你可以看到通過sand()函數(shù),我們是可以產(chǎn)生可以預見的隨機序列,那我們?nèi)绾尾拍墚a(chǎn)生不可預見的隨機序列呢?我們可能常常需要這樣的隨機序列,是吧。利用srand((unsign)(time(NULL))是一種方法,因為每一次運行程序的時間是不同的.

下面講一講在C語言里所提供的隨機數(shù)發(fā)生器的用法?,F(xiàn)在的C編譯器都提供了一個基于ANSI標準的偽隨機數(shù)發(fā)生器函數(shù),用來生成隨機數(shù)。它們就是rand()和srand()函數(shù)。這二個函數(shù)的工作過程如下:

1) 首先給srand()提供一個種子,它是一個unsigned int類型,其取值范圍從0~65535;

2) 然后調(diào)用rand(),它會根據(jù)提供給srand()的種子值返回一個隨機數(shù)(在0到32767之間)

3) 根據(jù)需要多次調(diào)用rand(),從而不間斷地得到新的隨機數(shù);

4) 無論什么時候,都可以給srand()提供一個新的種子,從而進一步“隨機化”rand()的輸出結果。

以下是一個產(chǎn)生隨機數(shù)的例子:

需要首先使用隨機數(shù)“種子”初始化,srand函數(shù):

#i nclude stdlib.h

#i nclude stdio.h

#i nclude time.h//使用當前時鐘做種子

void main( void )

{

int i;

srand( (unsigned)time( NULL ) );//初始化隨機數(shù)

/* 打印10個隨機數(shù). */

for( i = 0; i 10;i++ )

printf( " %d\n", rand() );

}

在C語言中,是如何取得這個隨機數(shù)的?

一個語句:rand();

它的作用就是隨機取0到RAND_MAX之間的任何數(shù)。ANSI標準指出,RAND_MAX值的范圍到少是32767,也就是雙字節(jié)整數(shù)的最大值。 下面我們用一個例子來取得從1到6的隨機整數(shù):

#include stdio.h

#include stdlib.h

main()

{

int i;

for(i=1;i=20;i++)

printf("%10d",1+(rand()%6));

}

第2行的stdlib.h是rand()函數(shù)的頭文件。第7行就是 實現(xiàn)功能的語句了。前面我們以經(jīng)說過函數(shù)取的值是介于0到RANDMAX之間的,而我們所要的是1到6之間的整數(shù)。用腳想一想就知道:任一整數(shù)除以6所得的余數(shù)是0~5之間的整數(shù),再加一之后就是1到6了,也就是我們的目標。利用這個原理我們使用%號對隨機數(shù)進行了縮放。

OK,運行兩次程序:

一:6 6 5 5 6 5 1 1 5 3 6 6 2 4 2 6 2 3 4 1

二:6 6 5 5 6 5 1 1 5 3 6 6 2 4 2 6 2 3 4 1

發(fā)現(xiàn):兩次運行的結果完全一樣。

結論:這算什么隨機數(shù)。

這種重復性是rand的一個重要特點,在調(diào)試程序時,這種重復性是必不可少的,因為它可以證明對程序的修改能夠正常運行。

實際上,rand函數(shù)產(chǎn)生的是偽隨機數(shù)。但我們需要的是隨機數(shù)。于是,我們需要對程序進行隨機化,這需要使用標準庫函數(shù)srand來實現(xiàn)。函數(shù)srand需要一個無符號的整型參數(shù),在每次程序執(zhí)行時用函數(shù)rand去生在一組不同的隨機數(shù)。

所以另一個語句是:srand()再rand()

#include stdlib.h

#include stdio.h

main()

{

int i;

unsignde seed;

printf("Enter a seed:");

scanf("%u",seed);

srand(seed);

for( i = 1;i=20;i++)

printf(""%10d",1+(rand()%6));

}

程序的運行結果是當我們輸入不同的SEED時,產(chǎn)生不同組的隨機數(shù)。這句話的意思有兩個:一:當輸入相同的SEED時,產(chǎn)生的同組隨機數(shù);二:每次運行我們都要輸入一個SEED。

如果我們希望不用每次輸入SEED值,而且每次運行時SEED值都是不同的,我們可以用下面語句代替上面的第三塊的三個語句:

srand(time(NULL));

這會使計算機自動讀取自己的時鐘以獲得SEED值。于是我們就獲值了每次運行都會改變的SEED,同樣也就獲得了真正的隨機數(shù)

//記:rand()產(chǎn)生一個0~RAND_MAX之間的數(shù)(如0~32767,我試了幾次RAND_MAX最大只能為32767);

//rand()%n (n=32767) 就產(chǎn)生了一個0~n的數(shù)

//m+rand()%n(n=32767)就產(chǎn)生的是一個m~m+n的數(shù)。

//如果要產(chǎn)生4字節(jié)的int隨機數(shù),那要另尋方法:

//在網(wǎng)上找到一個:

// int N=0x7fffffff;

// cout(int)((double)rand() / (double)(RAND_MAX + 1) * N)"\n";

//但測試以后得 (0~0x7ffeffff)

//還有尋找中。。。


新聞名稱:隨機函數(shù)a到bc語言 abc語言
本文來源:http://weahome.cn/article/dooepoj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部