共用方式為


rand

產生虛擬亂數。 這些函式已有更安全的版本可用,請參閱 rand_s

int rand( void );

傳回值

rand 傳回虛擬亂數,如上所述。 不會回傳錯誤。

備註

rand 函式會傳回介於 0 到 32767 ( RAND_MAX ) 的虛擬隨機整數。 使用 srand 函式會在呼叫 rand之前裁剪虛擬亂數產生器。

需求

常式

必要的標頭

rand

<stdlib.h>

如需其他相容性資訊,請參閱<簡介>中的相容性

範例

// crt_rand.c
// This program seeds the random-number generator
// with the time, then exercises the rand function.
//

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

void SimpleRandDemo( int n )
{
   // Print n random numbers.
   int i;
   for( i = 0; i < n; i++ )
      printf( "  %6d\n", rand() );
}

void RangedRandDemo( int range_min, int range_max, int n )
{
   // Generate random numbers in the half-closed interval
   // [range_min, range_max). In other words,
   // range_min <= random number < range_max
   int i;
   for ( i = 0; i < n; i++ )
   {
      int u = (double)rand() / (RAND_MAX + 1) * (range_max - range_min)
            + range_min;
      printf( "  %6d\n", u);
   }
}

int main( void )
{
   // Seed the random-number generator with the current time so that
   // the numbers will be different every time we run.
   srand( (unsigned)time( NULL ) );

   SimpleRandDemo( 10 );
   printf("\n");
   RangedRandDemo( -100, 100, 10 );
}
  

.NET Framework 對等用法

System::Random 類別

請參閱

參考

浮點支援

srand

rand_s