返回列表 發帖

亂數的使用-與應用

需include stdlib.h
數值=rand();

例:
取1-10的亂數 a=(rand()%10)+1;
取1-100的亂數 a=(rand()%100)+1;
取100-1000的亂數 a=(rand()%901)+100;

由上幾例可以歸納出來
要取 a~b 的亂數可以這麼寫:
(rand()%(b-a+1))+a

如果單用 rand 取亂數會發現取多次後會出現相同的亂數
這個時候就可以用其他技巧來幫忙

利用 srand() (定義在 stdlib.h)

用 srand 取亂數需要一個參數作為種子以產生新的亂數序列
而這個參數通常使用目前的時間傳入,這時候就需要用 time() (include <time.h>)
來幫忙。

利用 srand() (定義在 stdlib.h)

用 srand 取亂數需要一個參數作為種子以產生新的亂數序列
而這個參數通常使用目前的時間傳入,這時候就需要用 time() (include <time.h>)
來幫忙。

使用方法
在使用 rand 的前一行加上
srand(time(NULL));

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

  4. void main()
  5. {
  6. int a;
  7. srand(time(NULL));
  8. a=(rand()%100)+1;
  9. printf("The Random Number is %d .n", a);
  10. }

  11. 05/10/24 修正 感謝kobe這位朋友
複製代碼

大家都寫的很好喔,品詰的方法很棒!明輝加油快點寫出來~

TOP

返回列表