易百教程

使用当前时间播种随机数

在以下代码中,使用time()函数从系统时钟返回种子值。参考以下代码:

#include <stdio.h> 
#include <stdlib.h> 
#include <time.h> 

int main() 
{ 
   int r,a,b; 

   srand((unsigned)time(NULL)); 
   for(a=0;a<20;a++) 
   { 
       for(b=0;b<5;b++) 
       { 
           r=rand(); 
           printf("%d\t",r); 
       } 
       putchar('\n'); 
   } 
   return(0); 
}

编译和执行上面示例代码,得到以下结果:

hema@ubuntu:~/book$ gcc main.c
hema@ubuntu:~/book$ ./a.out
520744884       756615184       1327574783      846244098       1056342455
180132485       1206677203      466178792       1124460181      547812107
1448707453      462711348       1771239918      951641679       765401054
338656713       2122285263      798643450       1605288465      350185386
1010649638      2049336167      906074058       1776332991      1877509580
357079591       1946416452      814124231       705649604       1834115612
1479046821      1226394488      443247148       659137956       2072638586
1499589603      839270441       1131832141      1965768396      1963730622
1679644249      1266992201      278958322       1303400519      71150232
1044359377      1642057233      45951847        1843002827      1099862050
396137233       706168817       1001714570      1302211291      335018160
731740502       1659290882      133950964       1545864733      217456838
1968066576      877427906       1443851327      263830077       1536565862
1369006265      1763419680      228352655       353354759       1581704428
44599630        2032999008      701212981       323557952       1188915879
772363213       1367917329      683489464       818315060       1063436508
1783351515      1214452293      1769605325      637582437       369179936
2104623485      1369322939      2028470818      91090802        767704024
98444009        2059157378      1645131931      1542295336      175503807
1034214145      763817953       1938923488      1262566801      1117172712