999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

C語言中隨機函數的應用

2016-05-11 06:50:02馬紅旭
中國新通信 2016年7期
關鍵詞:程序

馬紅旭

【摘要】 文章討論的問題是利用c語言中的隨機整數,編寫幾個有用的程序。

【關鍵詞】 C語言 隨機整數 程序

C語言中隨機函數RAND( )的功能是產生0—32767之間的隨機整數。根據隨機函數取值范圍,我們可以變換出幾個有用的數學公式,以它們做為數學模型,就能夠編寫幾個有用的程序,本文將研究利用c語言中的隨機整數,編寫幾個有用程序的方法和過程。

一、驗證隨機函數取值范圍

有資料顯示C語言中隨機函數RAND( )的取值范圍是-90—32767之間的隨機整數,和我們上面提到的0—32767之間的隨機整數有一定差距,到底哪個正確,我們不妨親自編寫程序驗證。思路是:產生n個隨機整數, 每當這個隨機整數值小于0時,我們把計算器次數x增加一次,程序最后打印x的值。我們可以根據打印出的x值,做出相應的判斷,如果x值大于0次,說明rand( )函數有取[-0,-90]之間負整數的可能。據此我們編寫c語言程序,代碼如下:

#include "stdio.h"

#include "stdlib.h"

#include "time.h"

int main()

{ long int n=0,x=0;

srand( (unsigned)time( NULL ) );

for(n=1;n<=100000;n++)

if (rand()<0)x=x+1;

printf("%d", x ); }

經多次運行,甚至n最大值取到2G驗證,x值始終為零,說明rand()函數不可能取負值,因此驗證得到結論:隨機函數RAND( )的取值范圍是0—32767之間的隨機整數。

二、利用隨機函數產生指定位數的隨機整數

利用RAND( )函數產生一位隨機整數 (0—9),公式為rand( )%10,產生兩位隨機整數 (10—99)

公式為rand( )%90+10,產生三位隨機整數 (100—999)公式為rand( )%900+100,以此類推產生n位隨機整數公式為 rand()%(int)( pow(10,n)-pow(10,n-1) )+(int)pow(10,n-1) ),據此我們可以編程序實現產生n個n位的隨機整數(這里只產生10個數)。代碼如下:

#include "stdio.h"

#include "stdlib.h"

#include "math.h"

#include "time.h"

int main()

{ long int i,n=0,x=0;

printf(“請輸入產生隨機整數的位數”);

scanf("%d",&n;);

srand( (unsigned)time( NULL ) );

for(i=1;i<=10;i++)

if (n==1)printf("%d,",rand()%10);

else printf("%d,",

rand()%(int)( pow(10,n)-pow(10,n-1) )

+(int)pow(10,n-1) ); }

三、利用隨機函數產生指定范圍的隨機整數

利用RAND( )函數產生指定[A,B]范圍的隨機整數,公式為rand( )%(B-A+1)+A。依此公式我們編寫了一個程序,功能是:出幾道加法題給小學生做,如果學生寫對答案,顯示‘ok字樣,可以進行下一道題;如果沒做對,返回,重做此題。程序代碼如下:

#include “stdio.h”

#include “stdlib.h”

#include “math.h”

#include “time.h”

int main()

{ int i,n=0;int a,b,c;

printf(“請問要做幾位數加法?”);

scanf("%d",&n;);

srand( (unsigned)time( NULL ) );

for(i=1;i<=10;i++)

{a=rand()%(int)( pow(10,n)-pow(10,n-1) ) +(int)pow(10,n-1) ;

b=rand()%(int)( pow(10,n)-pow(10,n-1) ) + (int)pow(10,n-1) ;

a1:printf("%d+%d=?",a,b);

scanf("%d",&c;);

if (a+b==c)printf("ok\n");

else goto a1;} }

當然,程序還可有很多變化,比如學生可以預先選擇做幾道題,做完每道題退不退出等,此處不贅述。

四、綜述

利用上述方法,我們研究了C語言隨機整數 rand( )幾種用法,運算結果正確問題得到解決,該方法省時省力,安全高效,對c語言的應用與推廣意義重大。

參 考 文 獻

[1] 譚浩強等編著 .C程序設計[M]. 北京:清華大學出版社,2005(2007重?。?/p>

[2] 徐金梧等編著. TURBO C使用大全 [M]. 北京:北京科海培訓中心,1989.

[3] Charles Wright等著.鄧勁生等譯 Visual c++程序員實用大全[M]. 北京:中國水利水電出版社,1989.

猜你喜歡
程序
給Windows添加程序快速切換欄
電腦愛好者(2020年6期)2020-05-26 09:27:33
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
基于VMM的程序行為異常檢測
偵查實驗批準程序初探
我國刑事速裁程序的構建
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
恐怖犯罪刑事訴訟程序的完善
主站蜘蛛池模板: 亚洲免费三区| 亚洲天堂免费观看| 狠狠亚洲五月天| 日韩黄色在线| 日韩欧美国产综合| 极品性荡少妇一区二区色欲| 毛片大全免费观看| 亚洲国产成人自拍| 欧美国产日韩在线观看| 国产黑人在线| 三上悠亚精品二区在线观看| 亚洲A∨无码精品午夜在线观看| 国产国产人成免费视频77777| 毛片在线看网站| 国内嫩模私拍精品视频| 欧美国产菊爆免费观看| 国产午夜不卡| 亚洲第一色视频| 亚洲资源站av无码网址| 亚洲国产天堂久久综合| 国产成人精品视频一区视频二区| 高清欧美性猛交XXXX黑人猛交| 国内毛片视频| 亚洲天堂2014| 亚洲成综合人影院在院播放| 国产日韩丝袜一二三区| 国产乱人伦精品一区二区| 54pao国产成人免费视频| 中文字幕2区| 国产成人av一区二区三区| 欧美日韩理论| 美女被操91视频| 国产日本一区二区三区| 国产av剧情无码精品色午夜| A级毛片无码久久精品免费| 亚洲中文字幕国产av| 国产在线无码一区二区三区| 无码高潮喷水专区久久| 日本一本正道综合久久dvd| 中文字幕自拍偷拍| 久久免费成人| AV色爱天堂网| 免费无码在线观看| 中文字幕中文字字幕码一二区| 18黑白丝水手服自慰喷水网站| 毛片在线播放网址| 午夜无码一区二区三区在线app| 2020亚洲精品无码| 456亚洲人成高清在线| 99在线视频免费观看| 青青草久久伊人| 免费看黄片一区二区三区| 亚洲午夜福利精品无码| 婷婷色狠狠干| 伊人网址在线| 久久国产精品嫖妓| 欧美一级色视频| 久久99蜜桃精品久久久久小说| 在线va视频| 国产第一页第二页| 国产主播在线观看| 伊人查蕉在线观看国产精品| 67194成是人免费无码| 五月婷婷综合在线视频| 国产成人精品免费视频大全五级| 国产传媒一区二区三区四区五区| 国产黄色片在线看| 久久精品一卡日本电影| 日韩精品久久久久久久电影蜜臀| 91精品专区国产盗摄| 亚洲久悠悠色悠在线播放| 精品小视频在线观看| 亚洲无线视频| 亚洲性视频网站| 亚洲精品日产AⅤ| 国产午夜人做人免费视频| 无码免费的亚洲视频| 免费人欧美成又黄又爽的视频| 怡红院美国分院一区二区| 玖玖精品视频在线观看| 亚洲第一综合天堂另类专| 88av在线播放|