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
恐怖犯罪刑事訴訟程序的完善
主站蜘蛛池模板: 热九九精品| 99久久国产综合精品女同| 国产黑丝视频在线观看| 久久亚洲欧美综合| 亚洲国产中文精品va在线播放| 日本欧美视频在线观看| 欧洲一区二区三区无码| 无码在线激情片| 国产成人91精品| 美女无遮挡免费视频网站| 思思99热精品在线| 日本一区高清| 欧洲熟妇精品视频| 欧美成人精品一级在线观看| 免费又黄又爽又猛大片午夜| 手机在线国产精品| 日日噜噜夜夜狠狠视频| 思思热精品在线8| 91精品情国产情侣高潮对白蜜| 久久国产精品麻豆系列| 欧美性久久久久| 红杏AV在线无码| 青青草原国产精品啪啪视频| 欧美一道本| 国产在线拍偷自揄观看视频网站| 人妻无码一区二区视频| 亚洲精品成人片在线观看 | 高清色本在线www| 国产精品第| 好久久免费视频高清| 国产成年女人特黄特色毛片免| 亚洲福利片无码最新在线播放| 亚洲成人精品在线| 亚洲视频四区| 青青青草国产| 91麻豆国产视频| 99久久国产自偷自偷免费一区| 国产人成午夜免费看| 九九久久精品国产av片囯产区| 亚洲熟妇AV日韩熟妇在线| 亚洲第一香蕉视频| 日韩精品专区免费无码aⅴ| 日韩在线第三页| 免费又黄又爽又猛大片午夜| 日本人妻丰满熟妇区| 久久网欧美| 人妻中文久热无码丝袜| 久久人人妻人人爽人人卡片av| 国产精品香蕉在线| 色AV色 综合网站| 爱做久久久久久| 中文字幕无码电影| 欧洲av毛片| 久久久波多野结衣av一区二区| 亚洲天堂在线视频| 欧美在线三级| 新SSS无码手机在线观看| 国产精品yjizz视频网一二区| 亚洲无码视频一区二区三区| 亚洲国产欧美中日韩成人综合视频| 国产69囗曝护士吞精在线视频| 亚洲国产精品不卡在线| 热99re99首页精品亚洲五月天| 婷婷五月在线| 日韩在线永久免费播放| 亚洲第一成年人网站| 免费国产一级 片内射老| 亚瑟天堂久久一区二区影院| 波多野结衣AV无码久久一区| 国内熟女少妇一线天| 午夜毛片免费观看视频 | 九九热视频精品在线| 欧美国产综合视频| 88av在线播放| 成人亚洲天堂| 久久国语对白| 欧美激情第一欧美在线| 国产不卡一级毛片视频| 无码区日韩专区免费系列| 国产亚洲视频播放9000| 男女男免费视频网站国产| 国内精品免费|