使用rand函数获得随机数。rand函数返回的随机数在0-RAND_MAX(32767)之间。
例子:
/* RAND.C: This program seeds the random-number generator
* with the time, then displays 10 random integers.
*/
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
void main( void )
{
int i;
/* Seed the random-number generator with current time so that
* the numbers will be different every time we run.
*/
srand( (unsigned)time( NULL ) );
/* Display 10 numbers. */
for( i = 0; i < 10;i++ )
printf( " %6d\n", rand() );
}
在调用这个函数前,最好先调用srand函数,如srand( (unsigned)time( NULL ) ),这样可以每次产生的随机数序列不同。
如果要实现类似0-1之间的函数,可以如下:
double randf()
{
return (double)(rand()/(double)RAND_MAX);
}
如果要实现类似Turbo C的random函数,可以如下:
int random(int number)
{
return (int)(number/(float)RAND_MAX * rand());
}
例子:
/* RAND.C: This program seeds the random-number generator
* with the time, then displays 10 random integers.
*/
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
void main( void )
{
int i;
/* Seed the random-number generator with current time so that
* the numbers will be different every time we run.
*/
srand( (unsigned)time( NULL ) );
/* Display 10 numbers. */
for( i = 0; i < 10;i++ )
printf( " %6d\n", rand() );
}
在调用这个函数前,最好先调用srand函数,如srand( (unsigned)time( NULL ) ),这样可以每次产生的随机数序列不同。
如果要实现类似0-1之间的函数,可以如下:
double randf()
{
return (double)(rand()/(double)RAND_MAX);
}
如果要实现类似Turbo C的random函数,可以如下:
int random(int number)
{
return (int)(number/(float)RAND_MAX * rand());
}
本文介绍了如何使用C语言中的rand函数生成随机数,并通过实例展示了如何生成不同范围内的随机整数及浮点数。此外,还介绍了如何利用当前时间初始化随机数生成器以确保每次运行程序时都能得到不同的随机数序列。
1982

被折叠的 条评论
为什么被折叠?



