C語言實現(xiàn)生成1到100隨機數(shù)的方法

本篇文章為大家展示了C語言實現(xiàn)生成1到100隨機數(shù)的方法,代碼簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

創(chuàng)新互聯(lián)建站是一家以網(wǎng)絡技術(shù)公司,為中小企業(yè)提供網(wǎng)站維護、成都做網(wǎng)站、成都網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設、網(wǎng)站備案、服務器租用、空間域名、軟件開發(fā)、小程序開發(fā)等企業(yè)互聯(lián)網(wǎng)相關(guān)業(yè)務,是一家有著豐富的互聯(lián)網(wǎng)運營推廣經(jīng)驗的科技公司,有著多年的網(wǎng)站建站經(jīng)驗,致力于幫助中小企業(yè)在互聯(lián)網(wǎng)讓打出自已的品牌和口碑,讓企業(yè)在互聯(lián)網(wǎng)上打開一個面向全國乃至全球的業(yè)務窗口:建站聯(lián)系電話:028-86922220

生成10個1~100的隨機數(shù)

廢話不多說直接上程序。

#include<stdio.h>#include<stdlib.h>#include<time.h> int main()
{int ret = 0;
srand((unsigned int)time(NULL));for(int i=0; i<10; i++)
{
ret = rand()%100;printf("%d ",ret);
}return 0;
}

C語言實現(xiàn)生成1到100隨機數(shù)的方法

這個程序是用來生成10個隨機的數(shù)。接下來會詳細說一說這個程序的構(gòu)成。

隨機數(shù)生成代碼的分析

以上程序的關(guān)鍵代碼是:

 srand = ((unsigned)time(NULL));
 ret = rand()%100;

rand()函數(shù)所需頭文件是

#include<stdlib.h>

rand()是生成偽隨機數(shù)的函數(shù),它會按照一定的序列來生成隨機數(shù),但是它序列是固定的:

C語言實現(xiàn)生成1到100隨機數(shù)的方法

程序每次執(zhí)行它都將按照這個序列來給出隨機數(shù),所以在對rand()不加限制條件的話,生成的隨機數(shù)不夠隨機。

time()函數(shù)所需要頭的頭文件是:

#include<time.h>

time()函數(shù),值得注意的是time函數(shù)的形參,這個形參是個指針變量,通常寫為time(NULL)。
 這個函數(shù)的功能是,返回自1970年1月1日00:00:00到你先在電腦運行的時間(例:2018年3月24日14:14:00)之間的時間。這個數(shù)是隨機的,隨著你電腦運行時間而發(fā)生改變。

srand()函數(shù)所需要的頭文件是:

#include<stdlib.h>

srand()函數(shù)是偽隨機數(shù)發(fā)生器種子,它給rand()函數(shù)一個產(chǎn)生一個起點。在單獨使用rand()函數(shù)的時候,它將1作為默認參數(shù)。srand()的形參是一個無符號的類型,即unsigned類型,可以是int,float,char等等。
但在這里為了達到隨機數(shù)效果,將使用time()函數(shù)來產(chǎn)生一個起點,它直接作用于rand()函數(shù)。

注意:

   ret = rand()%100;

rand()%100是為了產(chǎn)生100以內(nèi)的隨機數(shù)。

有趣的小程序

這是一個電腦自己猜數(shù)字的小程序。

#include<stdio.h>#include<time.h>#include<process.h>#include<stdlib.h>#include<Windows.h>int main()
{    int ret = 0;    int guess = 0;    int left = 0;    int right = 100;
    srand((unsigned int)time(NULL));
    ret = rand() % 100;    printf("提供的答案數(shù)是->%d\n",ret);
    guess = 50;    while (1)
    {        if (guess > ret)
        {            printf("猜大了->%d\n", guess);
            right = guess;
            guess = (right + left) / 2;
            Sleep(1000);
        }        else if (guess < ret)
        {            printf("猜小了->%d\n", guess);
            left = guess;
            guess = (right + left) / 2;
            Sleep(1000);
        }        if (guess == ret)
        {            printf("猜到了是%d", guess);            break;
        }
    }
    system("pause ");    return 0;
}

C語言實現(xiàn)生成1到100隨機數(shù)的方法

這里使用了二分法的思想,讓電腦自己去猜100以內(nèi)的一個數(shù)。
使用了Sleep()函數(shù)用來延遲一下打印時間,Sleep()函數(shù)的參數(shù)的單位是ms,所以1000ms=1s。

上述內(nèi)容就是C語言實現(xiàn)生成1到100隨機數(shù)的方法,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

標題名稱:C語言實現(xiàn)生成1到100隨機數(shù)的方法
文章分享:http://muchs.cn/article46/pppgeg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站App設計、網(wǎng)站策劃、網(wǎng)站排名、微信小程序

廣告

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

成都網(wǎng)頁設計公司