c語言隨機數組
A. c語言中如何生成一個隨機數組
實現代碼如下:
#include<time.h>
#include<stdlib.h>
#include<stdio.h>void main()
{
srand( (unsigned)time( NULL ) );
int a[100];
printf("隨即初始化數組的100個數(范圍是0~100).\n");
for(int i=0;i<100;i++)
{
a[i]=rand()%101;
printf("%4d",a[i]);
if(i%10==0 && i!=0)
printf("\n");
}
getchar();
}
B. C語言如何把rand()產生的隨機數存入數組
rand()函數是產生隨機數的一個隨機函數。
(1)使用該函數首先應在開頭包含頭文件stdlib.h
#include<stdlib.h>(C++建議使用#include<cstdlib>,下同)
(2)在標準的C庫中函數rand()可以生成0~RAND_MAX之間的一個隨機數,其中RAND_MAX 是stdlib.h 中定義的一個整數,它與系統有關。
(3)rand()函數沒有輸入參數,直接通過表達式rand()來引用;例如可以用下面的語句來列印兩個隨機數:
printf("Random numbers are: %i %i ",rand(),rand());
例如:
#include<stdio.h>
#include<stdlib.h>
intmain()
{
inti,k[10];
for(i=0;i<10;i++)
k[i]=rand()%10;
for(i=0;i<10;i++)
printf("%d",k[i]);
return0;
}
/*
運行結果:
1740948824
*/
C. c語言中為數組隨機賦值
//剛寫的,測試通過,如果有疑問,歡迎交流
//思路是,保存一個1-36順序存放的數組,然後每次隨機的從這個數組里
//無放回的取數(也就是取出來一個數之後,從這個數組中刪除)
//並把取出來的數,放入e[i][j]
//這樣保證了1-36都出現且都只出現一次
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
//從輸出中刪除一個元素
voidremove_tar(int*a,inttar_idx,intn){
while(tar_idx+1<n){
a[tar_idx]=a[tar_idx+1];
tar_idx++;
}
}
intmain(){
srand(time(0));
intnum_lib[36];
inte[6][6];
for(inti=0;i<36;i++)
num_lib[i]=i+1;
intn=36;
//洗牌的過程
for(inti=0;i<36;i++){
intcur_idx=rand()%n;
e[i/6][i%6]=num_lib[cur_idx];
remove_tar(num_lib,cur_idx,n);
n--;
}
//列印輸出
for(inti=0;i<6;i++){
for(intj=0;j<6;j++){
printf("%d",e[i][j]);
}
printf(" ");
}
return0;
}
D. c語言實現從一個數組中隨機抽取一個元素
int[]b=newint[100];
intt=0,idx=0,len=a.length;
for(inti=0;i<len;i++)
{
idx=[rand()*(len-i)];
b[i]=a[idx];
t=a[idx];
a[idx]=a[len-1];
a[len-1]=t;
}
returnb;
E. c語言如何隨機輸出數組
最簡單的,獲取當前運行時間,除於3,得到哪個數就輸出那個數組。
F. c語言的數組隨機存取是什麼意思
隨機存取需要和順序存取做一下比較,比較之後就明白了
比如給你一列縱隊的人,讓你找到位置為5的人,第一種方法是你從第一個位置開始一個一個往後找,直到找到位置為5的位置,這樣的就是順序存取
而如果你已經知道5的位置,不需要經過前面的四個位置直接到達位置為5的位置,那麼這樣的就是隨機存取
G. C語言 如何隨機生成數組
使用rand()函數+循環語句可生成一組隨機數組。
1、C語言提供了一些庫函數來實現隨機數的產生。C語言中有三個通用的隨機數發生器,分別為 rand函數, random函數, randomize 函數。rand函數產生的並不是真意正義上的隨機數,是一個偽隨機數,是根據一個數,稱之為種子,為基準以某個遞推公式推算出來的一系數,當這系列數很大的時候,就符合正態公布,從而相當於產生了隨機數。但這不是真正的隨機數,C提供了srand()函數,它的原形是void srand( int a),用來設置一個種子數。在調用rand函數產生隨機數前,應該先利用srand()設好隨機數種子,如果未設隨機數種子,rand()在調用時會自動設隨機數種子為1。
2、常式:
#include<time.h>
#include<stdlib.h>
#include<stdio.h>
voidmain(){
srand((unsigned)time(NULL));//用當前系統時間設置種子
inta[100];
printf("隨即初始化數組的100個數(范圍是0~100). ");
for(inti=0;i<100;i++){
a[i]=rand()%101;//用rand函數生成0-100的隨機數,並賦值給數組a[i]
printf("%4d",a[i]);
if(i%10==0&&i!=0)
printf(" ");
}
getchar();
}
H. c語言如何實現隨機生成多個數組至少要100個
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。
I. 怎麼用C語言生成隨機數
假設要生成的隨機數是大於等於20且小於等於100的整數
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
voidmain(){inta,b,x;
a=20;b=100;
srand((unsignedint)time(NULL));//用當前時間生成一個隨機數種子
x=rand()%(b-a+1)+a;
printf("得到一個隨機數:%d ",x);
}
J. 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樓抄襲我。。。