A. 如何用c語言實現抽取隨機數
用標准c就可以實現
需要用到的兩個函數在包含在stdlib.h頭文件里,分別是
void rand ( unsigned int seed ); //設置隨機化種子
int rand ( void ); //產生0到RAND_MAX之間的隨機數,RAND_MAX是stdlib.h里定義的數字。
其實這兩個函數實現產生的是假隨機數,所以真正實現隨機還要藉助time.h裡面的函數time()。
具體可以參考下面的方法:
//產生0-9隻間的隨機數
#include<stdlib.h>
#include<stdio.h>
#include<time.h>
int Random()
{
srand(time(NULL));
return rand()%9;
}
B. 怎樣用c語言取一個隨機數
#include
#include
#include
int
main()
{
int
num;
srand(time(0));
//必須要用這個
num
=
1
+
rand()
%
10;
//在[1,10)中隨機出一個數字
printf("%d",num);
return
0;
}
頭文件不能少
C. C語言中如何隨機選取數組中的數字(程序代碼請寫出)
應該是a[2][3]={{1,3,2},{8,0,3}} 吧
#include <iostream> //cout函數的頭文件
#include <cstdlib>
#include <time.h> /* srand函數與rand函數的頭文件*/
using namespace std;
int main()
{
int a[2][3]={{1,3,2},{8,0,3}},x,y,z;
srand ( (unsigned) time (NULL) );
x=rand()%2; //調用隨機函數
y=rand()%3; //調用隨機函數
z=a[x][y];
cout<<z<<"\n";
system ("pause");
return 0;
}
三樓,請注意素質...
那是我的版權!!
樓主,一定要注意先來後到!
我本是2樓的,後因稍作修改,沒想到3樓抄襲我。。。
D. 如何用C語言編一個取隨機數的程序
#include
<stdio.h>
#include<stdlib.h>
#include<time.h>
main()
{
int
a;
srand(time(0));
a=rand()%100+1;/*這個a的值就是你要的隨機整數,100表示生成數的范圍,可自己改,要生成多個的話只要用循環就行了*/
printf("%d\n",a);
}
E. c語言中在給出的數據中隨機取數
#include
#include
#include
int
main(
)
{
int
i;
double
num
[10]=
{
1.2,
1.5,
3.5,
4.7,
2,
3,
4,
5,
6,
7
};
//
……
srand(
(unsigned)time(
NULL
)
);
//
先產生一個0
到
num-1
的隨機數,從你的數據數組中取那個就行了。
//
產生方法rand()
%
10,產生10以內隨機數。
//
比如下面產生10個隨機數,及其對應的你
的數據
for(
i
=
0;
i
<
10;i++
)
printf(
"i
=
%d,
num[i]
=
%lf\n",
rand()%10,
num[i]
);
return
0;
}
F. C語言抽取隨機數怎麼編寫
源程序代碼以及演算法解釋如下:
產生1-10隨機數程序:
#include <iostream>
#include <time.h>
using namespace std;
int main()
{
const int n = 10;//定義隨機數個數
int number[n] = { NULL };//定義隨機數存儲的數組
srand((unsigned)time(NULL));//初始化隨機函數
number[0] = rand() % n;//第一個隨機數無需比較
cout << number[0] << " ";
for (int i = 1; i < n; i++)//其餘隨機數循環產生
{
int j = 0;
number[i] = rand() % n;//產生隨機數
while (1)
{
if (number[i] == number[j])//若有相同則繼續循環重新安排隨機數
{
number[i] = rand() % n;//產生隨機數
j = 0;//若遇到相同的就從頭遍歷
continue;
}
if (j == (i - 1))//若遍歷完就跳出
break;
j++;
}
cout << number[i] << " ";
}
cout << endl;
return 0;
}
程序運行結果如下:
(6)c語言數字卡片怎麼隨機取擴展閱讀:
利用vector進行隨機數輸出:
#include <iostream>
#include <vector>
#include <time.h>
using namespace std;
int main()
{
const int n = 10;
int randnum;
vector<int> number;
for (int i = 0; i < n; i++)
{
number.push_back(i + 1);//從尾部添加元素
cout << number[i] << " ";
}
cout << endl;
srand((unsigned)time(NULL));
for (int j = 0; j < n; j++)//其餘隨機數循環產生
{
randnum = rand() % (n - j);//rand函數生成的隨機數是0-(n-1)
cout << number.at(randnum) << " ";
number.erase(number.begin() + randnum);
}
cout << endl;
return 0;
}
G. C語言中怎麼實現隨機取數啊
srand(time(NULL));//產生
隨機數
種子
rand()
%
100
+1;//產生一個1~100以內的隨機數.
H. c語言怎麼生成隨機數
你好!
#include<stdio.h>
#include<stdlib.h>//生成隨機數用
#include<time.h>//利用時間生成種子
#include<math.h>
intmain()
{
inti;
inta[100];
srand(time(NULL));//生成種子
for(i=0;i<100;i++)
{
a[i]=rand()%1000+1000;//生成一個小於1000的隨機數
//然後加1000,變成1000-2000之間的數
printf("%d",a[i]);//列印
}
i=rand()%100;//隨機抽取其中的一個數
printf("
抽取到的是:%d
",a[i]);//列印
return0;
}
I. C語言中獲得隨機數的方法是什麼
可以使用庫函數rand()。
rand聲明於stdlib.h,其原型為
int rand(void);
功能為返回一個隨機整型值。在C語言中,該值是一個正數值。
在需要限定獲取到的隨機數范圍時,如范圍要求為[m,n] m<n且m,n均為整數,可以用
rand()%(n-m+1)+m
的形式進行獲取。原理為:
%為取余計算,當%k時,結果是[0,k-1]之間的數值;
於是rand()%(n-m+1) ∈ [0, n-m];
所以rand()%(n-m+1)+m ∈ [0+m, n-m+m]=[m,n]。
J. C語言中,怎麼從0~9中隨機抽取4個不同的數字
#include<stdio.h>
#include <stdlib.h>
int main()
{
int a[4],i,j;
for(i=0;i<4;i++)
{
a[i]=rand()%10;
for(j=0;j<i;j++)//在這之前沒必要調用改變種子數的函數,只需要用下面的一個IF語句判斷一下就行了,兵兵工具那樣寫的,如果運氣好的話,四個結果不同,但如果運氣不好就會有重復,比如要輸出8個不同的數,估計他的答案肯定行不通了,而我的可以
if(a[i]==a[j])
{
i--;
break;
}
}
for(i=0;i<4;i++)
printf("%d\t",a[i]);
printf("\n");
return 0;
}