C語言中的隨機產生函數

來源:互聯網
上載者:User
   
     今天因為有需要,要隨機產生五百個等長的字串,要一個一個寫出來那是不大現實的問題,也是作為一個程式員覺得比較可恥的問題(這句話不是針對誰,只是我自己個人覺得而已)。所以利用中午休息的時間,查了一下資料,用C語言實現了這個功能。

     VB、DELPHI中,都有一個隨機函數,C語言雖然用了很長時間,可都沒怎麼聽說過隨機介面函數。其實它自己也有的,那就是srand(time(NULL))與rand().關於這兩個函數,只是利用了時間的變化,來產生隨機的資料。具體的使用,通過下面的代碼就可以很容易的知道。
     下面是簡單的代碼實現:

  1. #include <stdio.h>
  2. #include <time.h>
  3. #include <stdlib.h>

  4. int main(int argv, char** argc)
  5. {
  6.     char* ss[500] = {0};
  7.     int i = 0;
  8.     int m = 0;

  9.     srand(time(NULL));

  10.     for(i = 0; i < 500; i++)
  11.     {
  12.         ss[i] = malloc(10);
  13.         int j = 0;
  14.         for(m = 0; m < 9; m++)
  15.         {
  16.             j = rand()%1000;
  17.             if('A' <= j && j <= 'Z' | |  'a' <= j && j <= 'z')       //只產生字母的字串
  18.             {
  19.                 *(*(ss+i)+m) = j;
  20.             }
  21.             else m--;
  22.         }
  23.         *(*(ss+i)+m) = '/0';
  24.     }

  25.     for(i = 0; i < 500; i++)
  26.     {
  27.         if(i % 5 == 0)
  28.         {
  29.             printf("/n");
  30.         }
  31.         printf("%s  ", ss[i]);
  32.  }

  33.     printf("/n");

  34.     return 0;
  35. }

      這也是今天剛知道的一個C語言隨機介面函數,所以順便做一下筆記,如果大家有什麼更好的介面函數,請告訴我~~

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.