c語言隨機整數
㈠ c語言,如何產生隨機數
1、第一步,先定義int一個數組和int一個指針變數。
㈡ 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;
}
程序運行結果如下:
(2)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;
}
㈢ c語言產生隨機整數
#include<stdio.h>
#include <stdlib.h>
#include<time.h>
void main()
{
srand((unsigned)time(NULL));
int i=1,n,c,m;
n=rand()%100;
// printf("%d\n",n);
for(i=1;i<=10;i++)
{ m=11-i;
printf("請輸入你猜到的數!你有%d次機會\n",m);
scanf("%d",&c);
if(c<n)
printf("小了,再猜!");
else if(c>n)
printf("大了,再猜!");
else
{ printf("恭喜你 你猜對了!它就是%d\n",n);
break;}
}
}
㈣ C語言怎樣產生一定范圍的隨機數
在C語言中復,rand()函數可以用來產生制隨機數,但是這不是真真意義上的隨機數,是一個偽隨機數,是根據一個數,可以稱它為種子。
為基準以某個遞推公式推算出來的一系數,當這系列數很大的時候,就符合正態公布,從而相當於產生了隨機數。
C語言產生一定范圍的隨機數的源代碼如下:
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i;
for(i=0; i<10; i++) //隨機產生10個數。
{
printf("%d ", rand());
}
return 0;
}
(4)c語言隨機整數擴展閱讀
1、如果要隨機生成一個在一定范圍的數,你可以在宏定義中定義一個random(int number)函數,然後在main()裡面直接調用random()函數。
2、在對rand()的前三次調用中,並且此後得到的返回值仍然是在對rand()的第一批調用中所得到的其餘的返回值。因此,只有再次給srand()提供一個隨機的「種子」值,才能再次得到一個隨機數。
㈤ c語言隨機數函數是什麼
C語言隨機函數主要用於實現一組隨機數的生成。
代碼示例如下:
#include<stdio.h>
#include<stdlib.h>
int main ()
{
int a;
a=rand()%4;
printf("%d ",a);
return 0;
}
C預先生成一組隨版機數,每次調用隨機函數權時從指針所指向的位置開始取值,因此使用rand()重復運行程序產生的隨機數都是相同的,可以通過srand()函數來改變指針位置。
(5)c語言隨機整數擴展閱讀:
C語言隨機函數指針位置
void srand( unsigned int seed )
改變隨機數表的指針位置(用seed變數控制)。一般配合time(NULL)使用,因為時間每時每刻都在改變,產生的seed值都不同。
基於毫秒級隨機數產生方法:
#include<windows.h>
種子設為:srand(unsigned int seed);
srand(GetTickCount());
參考資料:網路-C語言隨機函數
㈥ 如何用c語言產生1000個隨機整數
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void main()
{int a[1000];
int i;srand(time(0)); /*初始化種子*/for( i = 0; i < 1000; i++ ) a[i]=rand();
printf("ok");for( i = 0; i < 1000; i++ ) printf("%d,", a[i]);
}
㈦ 怎麼用C語言生成隨機數
生成1~13的隨機數,隨機數序列中沒有重復字數
#include <stdio.h>
#include <stdlib.h> // 包含rand()函數說明
#include <time.h>
#define N 13
void main( void )
{ inti, j, num[N], tmp; //用當前時間種子重置隨機數生成器,使每次運行生成不同的隨機數
srand((unsigned)time( NULL ) );
for(i=0;i<N;i++) // 生成N個數
{
while(1) //生成1個數
{
tmp=N *rand()/ RAND_MAX +1; // 產生隨機數
for(j=0;j<i;j++) //判斷是否重復
if( tmp==num[j] )
break;
if(j==i) // 找到1個數
{
num[i]=tmp; //入隊列
break; // 開始下一輪
}
} printf("%3d\t",num[i]); //列印結果
}
}
如果可以重復,去掉內循環,直接將生成的隨機數存入數組。
㈧ C語言隨機生成數字
for(int
i=0;i<=a長度;i++)
{
a[i]=random(100);/*得到0到100之間的隨機數,具體用法可以查一下隨機函數。相應的隨機函數還有randomize,srand,rand*/
}
㈨ 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;
}
㈩ C語言如何編程產生隨機數
1、首先打開Visual stdio 2019,依次點擊文件,新建,項目新建以一個空白的項目: