當前位置:首頁 » 編程語言 » c語言最大的隨機數

c語言最大的隨機數

發布時間: 2022-08-06 14:45:23

c語言如何產生大范圍隨機數

用多個隨機數,每個代表不同的位置,比如你這個可以產生3個單位元組數,高位元組加以限制,中位元組,低位元組在0-256內隨機。。。或者用5個10以內隨機數不就完了。。。

㈡ c語言求隨機產生的10個數的最大值(要求用函數實現)

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
intmain()
{
intn,i,max;
srand(time(NULL));
max=rand();
for(i=1;i<10;i++)
{
n=rand();
if(n>max)max=n;
}
printf("max=%d ",max);
return0;
}

㈢ C語言中如何產生很大的隨機數

這個可以一個一個的來生成啊,每次生成一個0-9之前的隨機數,然後生成幾次
組合起來就可以了,

㈣ 用C語言編寫程序:將隨機生成1到20的50個隨機數存在數組中,然後找出最大、最小、中間值 並輸出!!很急

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

voidsort(inta[],intn){
inti,j,k,t;
for(i=0;i<n-1;++i){
k=i;
for(j=i+1;j<n;++j){
if(a[k]>a[j])k=j;
}
if(i!=k){
t=a[i];
a[i]=a[k];
a[k]=t;
}
}
}

intmain(){
inti,n=50;
inta[50];
srand((unsigned)time(NULL));
for(i=0;i<n;++i){
a[i]=rand()%20+1;
if(i&&i%10==0)printf(" ");
printf("%3d",a[i]);
}
printf(" ");
sort(a,n);
printf("最大:%d ",a[n-1]);
printf("最小:%d ",a[0]);
printf("中間:%d ",a[n/2]);
return0;
}

㈤ C語言10-100隨機20個數字 輸出最大值

#include<math.h>
#include<stdio.h>
main()
{
intmax,n=0,num;
while(1)
{
num=rand()%100;//產生一個0~99的隨機數
if(num<10)continue;//若隨機數的值小於10則提前結束本次循環重新生成隨機數
printf("%5d",num);//否則就輸出隨機數
max=num;//將隨機數賦給max
n++;//將隨機數的計數器加1,即n=1
break;//退出循環
}//得到一個10~100以內的隨機數
while(n<=20)//若計數器的值小於20,表示隨機數不夠
{
num=rand()%100;//產生一個0~99的隨機數
if(num<10)//若隨機數的值小於10則提前結束本次循環重新生成隨機數
continue;
if(max<num)//若新隨機數num的值大於max
max=num;//則將num的值賦給max
printf("%5d",num);//輸出num
n++;//將隨機數的計數器加1
}
printf(" max=%d",max);//輸出最大的隨機數
}

㈥ 如何在C語言中產生一定范圍的隨機數

c語言的獲取隨機數的函數為rand(),
可以獲得一個非負整數的隨機數。要調用rand需要引用頭文件stdlib.h。
要讓隨機數限定在一個范圍,可以採用模除加加法的方式。
要產生隨機數r,
其范圍為
m<=r<=n,可以使用如下公式:
rand()%(n-m+1)+m
其原理為,對於任意數,
0<=rand()%(n-m+1)<=n-m
於是
0+m<=rand()%(n-m+1)+m<=n-m+m

m<=rand()%(n-m+1)+m<=n

㈦ C語言寫出100個隨機數中取大的演算法

輸入100個隨機數,從第一個開始比較,取出兩者中大的數,再跟第三個數比較,在取出其中較大者,如此循環,至比較完第100個數為止。

㈧ 如何用c語言產生大量隨機數(100000000個左右) rand()只能產生2的15次方個。(用於排序演算法測試)

#include<stdio.h>
#include<time.h>
#include <stdlib.h>
int main()
{
// freopen("out.txt","w",stdout);
srand(time(0));
int n=100000000;//產生字元的個數
int big=-1;
for(int i=0;i<n;i++)
{
int a = rand()*rand();
}
}

我知道你什麼意思了,是說rand()的范圍只能產生2^15-1的數, 你再乘一個rand()就行了,不會超過int,可以放心

還有問題歡迎繼續hi我

㈨ C語言rand()函數產生的最大隨機數是多少

最大32767 (2^16-1)。
系統里的隨機數是利用初等數論中的同餘定理來實現的.
整數rand的原理是:
y=ax+b(mod n)其中,n一般是一個很大的素數,幾萬。
a也是大素數。而且a,b,n都是常數。所以rand的產生決定於x,
他被稱為seed。
每一個seed都是上一次產生的y的函數。這樣,如果直接取seed=y的話,
雖然產生的rand之間相關性甚小,但只要知道某個y,就能推知以後的rand。
為避免這種情況,一般取seed為y和當時計算機的時間的函數,如seed=y+t

比如VC中對於rand()函數是如下實現的.
int __cdecl rand (void)
{
return(((holdrand = holdrand * 214013L + 2531011L) >> 16) & 0x7fff);
}

熱點內容
佳能相機存儲卡怎麼取消 發布:2025-01-22 18:40:59 瀏覽:568
天貓寶貝上傳 發布:2025-01-22 18:35:09 瀏覽:544
ipad如何登錄金鏟鏟安卓賬號 發布:2025-01-22 18:32:09 瀏覽:319
加密溝通 發布:2025-01-22 18:31:22 瀏覽:555
win7ftp用戶名和密碼設置 發布:2025-01-22 17:46:48 瀏覽:221
三表聯查的sql語句 發布:2025-01-22 17:27:13 瀏覽:418
安卓怎麼解壓分卷壓縮 發布:2025-01-22 17:24:59 瀏覽:721
歐姆龍plc編程語言 發布:2025-01-22 17:21:48 瀏覽:396
和值編程 發布:2025-01-22 17:20:07 瀏覽:518
微信青少年模式獨立密碼是什麼 發布:2025-01-22 16:52:06 瀏覽:590