『壹』 c語言如何產生一定范圍內一定數量的不同隨機數
源代碼如下:
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <unistd.h>
#define a 16807//or 48271
#define m 2147483647
#define q (m/a)
#define r (m%a)
static long int seed = 1;
//return rand long in [1,m]
long int pm_rand(void)
{
long hi = seed / q;
long lo = seed % q;
long tmp = a * lo - r * hi;
if(tmp > 0)
seed = tmp;
else
seed = tmp + m;
return seed;
}
int main(void)
{
for(int i = 0;i < 100;++i)
printf("%ld ",pm_rand());
puts("");
return 0;
}
(1)c語言一定范圍的隨機數擴展閱讀
不指定范圍產生隨機數的源代碼
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i;
for(i=0; i<10; i++) //隨機產生10個數。
{
printf("%d
", rand());
}
return 0;
}
『貳』 c語言怎樣產生一定范圍的隨機數
#include <stdlib.h>
int a = rand() %100;
產生0-99的隨機數
#include <time.h>
srand(unsigned(time));
用來重置種子時間,不然生成出來的都是跟第一次一樣的數
『叄』 如何用c語言產生一定范圍內的隨機數
srand((int)time(NULL));設定隨機數種子
例子如下:
直接編譯,程序執行結果如下圖所示:
(3)c語言一定范圍的隨機數擴展閱讀:
隨機數是專門的隨機試驗的結果。在統計學的不同技術中需要使用隨機數,比如在從統計總體中抽取有代表性的樣本的時候,或者在將實驗動物分配到不同的試驗組的過程中,或者在進行蒙特卡羅模擬法計算的時候等等。
產生隨機數有多種不同的方法。這些方法被稱為隨機數發生器。隨機數最重要的特性是:它所產生的後面的那個數與前面的那個數毫無關系。
『肆』 如何用c語言產生一定范圍內的隨機數
srand(seed); //產生隨機種子seed,可以手動指定,也可以取當前系統時間。取系統時間則為srand((unsigned)time(NULL)); //(需要事先包含time.h);
int randnum=rand() % N; //調用rand()函數,根據seed產生一個0~N(N為任意整數)以內的隨機數,將值返回給整型變數randnum。
『伍』 如何在C語言中生成一定范圍內的隨機數
srand((int)time(NULL));設定隨機數種子
rand()%100;產生0-99的隨機數。
高級點的,假如要產生16-59之間的數,你可以這樣寫:rand()%44+16(這里44由59-16+1得到)。其他情況如法炮製!
『陸』 c語言編程中 怎樣給a賦一個一定范圍內一個隨機數
rand()是隨機函數,可以隨機生成條件允許內的任意值,然後用a=rand()%101即生成的隨機和101取余數賦值給a,這樣a的值就可能是0~100之間的任意值,在用輸出指令printf("%d",a)輸出a值即可~~
『柒』 c語言 在某范圍產生隨機數
估計你是不符合條件就一直隨機了……直到隨機到了為止
首先,確定你a的子集裡面的元素個數,比如{a[1][1],a[6][5],a[3][5],a[3][7]}總共4個,把這4個元素單獨組成一個新數組b[4],然後
srand((unsigned)time(NULL)); d = rand()%(b內元素個數,也就是4);開始隨機
此時d顯然滿足條件,操作b[d]也就是操作你原來的符合條件的a[j][k]
『捌』 c語言中生成指定大小范圍內(10…200以內)的一個隨機數
您好,這樣就可以了
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
intmain()
{
intn;
srand(time(NULL));//初始化隨機數種子
n=rand()%191+10;
printf("%d ",n);
}