❶ 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個數的最大值(要求用函數實現)
#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語言中基本整型的允許的最大值是32767我這個數比32767要大為什麼還能正常輸出呢
32767是16位系統上的int的最大值,現在一般的系統編譯器都是32位的,所以最大值就是2^31-1,大約是2147483647,超出這個范圍也並不你說的隨機數,只是高位會被截斷
❹ c語言中隨機數的范圍
范圍是[x,y) 意思是包括x,不包括y
❺ 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語言中如何產生很大的隨機數
這個可以一個一個的來生成啊,每次生成一個0-9之前的隨機數,然後生成幾次 組合起來就可以了,
❼ C語言如何產生大范圍隨機數
用多個隨機數,每個代表不同的位置,比如你這個可以產生3個單位元組數,高位元組加以限制,中位元組,低位元組在0-256內隨機。。。或者用5個10以內隨機數不就完了。。。
❽ c語言隨機函數怎麼設置最小最大值
你可以看下下面的例子,這個例子最大的隨機數就是100
隨機輸出十個0-100之間的整數
程序例1:
#include <stdlib.h> /*用到了srand函數,所以要有這個頭文件*/
#include <stdio.h>
#include <time.h> /*用到了time函數,所以要有這個頭文件*/
#define MAX 10
int main( void)
{
int number[MAX] = {0};
int i;
unsigned int seed;
scanf("%d",&seed);/*手動輸入種子*/
srand(seed);
for(i = 0; i < MAX; i++)
{
number[i] = rand() % 100; /*產生100以內的隨機整數*/
printf("%d ", number[i]);
}
printf("\n");
return 0;
}