隨機函數(shù)C語言模擬 c語言的隨機數(shù)函數(shù)

怎么用C語言生成隨機數(shù)

假設要生成的隨機數(shù)是大于等于20且小于等于100的整數(shù)

成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供蕭山企業(yè)網(wǎng)站建設,專注與成都網(wǎng)站設計、網(wǎng)站建設、html5、小程序制作等業(yè)務。10年已為蕭山眾多企業(yè)、政府機構等服務。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設公司優(yōu)惠進行中。

#includestdio.h

#includetime.h

#includestdlib.h

void?main()?{?int?a,b,x;

a=20;?b=100;

srand((unsigned?int)time(NULL));?//用當前時間生成一個隨機數(shù)種子

x=rand()%(b-a+1)+a;

printf("得到一個隨機數(shù):%d\n",x);

}

C語言如何編程產(chǎn)生隨機數(shù)?

1、首先打開Visual stdio 2019,依次點擊文件,新建,項目新建以一個空白的項目:

2、新建新項目以后,右鍵點擊左邊的源文件,選擇添加,點擊添加項:

3、選擇cpp,并將下方的擴展名改為.c,然后點擊確定:

4、接下來就可以用編譯器編譯,使用rand()函數(shù)產(chǎn)生C語言的隨機數(shù),需要加入stdlib.h和time.h在表頭,rand()函數(shù)需要給srand()函數(shù)提供一個參數(shù),不然系統(tǒng)會給定一個默認的參數(shù),如果參數(shù)為一任意的常量的話,得到的也是偽隨機數(shù):

4、按ctrl+F5就可以運行程序了,在彈出的窗口中就會看到得到的所有隨機數(shù)了:

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;}

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

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

scanf("%d",b);

}

}

system("pause");

}

C語言中怎樣寫一個生成隨機數(shù)的函數(shù)

rand函數(shù)也是調(diào)用dos的時鐘,進行的偽隨機函數(shù).

你也可以使用時鐘來模擬隨機函數(shù).

可以試用gettime這個函數(shù):

long int MyRand(int x)

{

struct time t1,t2,t3;

gettime(t1);

int y1=t1.ti_hund;//取1/100s作為基數(shù)

gettime(t2);

int y2=t2.ti_hund;//取1/100s作為基數(shù)

gettime(t3);

int y3=t3.ti_hund;//取1/100s作為基數(shù)

return y1*y2*y3;//產(chǎn)生的隨機數(shù)0~99*99*99

}

c語言隨機函數(shù)問題

randomize();

random(100);

都不是標準的庫函數(shù)。

srand 產(chǎn)生 種子,用來初始化,供 計算偽隨機數(shù)序列。

rand 計算隨機數(shù),用當前種子,即 默認種子或 srand 產(chǎn)生的 種子。

不同編譯器,庫函數(shù)名可能不同,但基本原理相同。一個產(chǎn)生種子,一個計算偽隨機數(shù)序列。

如果不用srand 產(chǎn)生新的種子,偽隨機數(shù)序列是不變的。達不到模擬“隨機”的目的。

C語言利用隨機函數(shù)模擬 30 個某班學生成績,一位小數(shù),一行 10 個數(shù)據(jù),平均分,高于平均分值

#includestdio.h

#includestdlib.h

#includetime.h

void?main()

{

int?stud[30],i,j;

int?rand();

float?av=0;//表示平均數(shù)

int?m=0,n=0;//m表示高于平均分的人數(shù),n表示不及格人數(shù)

srand((int)time(0));

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

stud[i]=rand()%60+40;

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

{

printf("\n");

for(j=0;j10;j++)

{

printf("%4d??",stud[i*10+j]);

av+=stud[i*10+j];

}

}

av/=30;

printf("??%f\n",av);

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

{

if(stud[i]av)

m++;

if(stud[i]=60)

n++;

}

printf("高于平均分人數(shù):%d,不及格人數(shù):%d\n",m,n);

}

結(jié)果:

94 ? ?70 ? ?79 ? ?67 ? ?53 ? ?86 ? ?40 ? ?82 ? ?97 ? ?97

50 ? ?87 ? ?98 ? ?71 ? ?42 ? ?91 ? ?69 ? ?66 ? ?72 ? ?91

82 ? ?69 ? ?42 ? ?77 ? ?53 ? ?67 ? ?60 ? ?75 ? ?87 ? ?84 ? ?73.266667

高于平均分人數(shù):15,不及格人數(shù):24

當前名稱:隨機函數(shù)C語言模擬 c語言的隨機數(shù)函數(shù)
網(wǎng)頁地址:http://muchs.cn/article38/dococsp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供標簽優(yōu)化、網(wǎng)站設計搜索引擎優(yōu)化、微信小程序網(wǎng)站營銷、云服務器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

手機網(wǎng)站建設