在以下代码中,使用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