當前位置:首頁 » 編程語言 » c語言數組賦隨機值

c語言數組賦隨機值

發布時間: 2022-12-16 00:29:16

1. 在c語言中,自定義一個數組,100個元素,對其進行隨機賦值,數值范圍為0~255。要求從小到大排序

代碼如下:

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

intmain()
{
intnumbers[100],i,j,temp;

srand(time(NULL));

//產生隨機數
for(i=0;i<100;i++){
numbers[i]=rand()%(255+1);
}

//冒泡法排序
for(i=0;i<(100-1);i++){
for(j=0;j<(100-i-1);j++){
if(numbers[j]>numbers[j+1]){
temp=numbers[j];
numbers[j]=numbers[j+1];
numbers[j+1]=temp;
}
}
}

//輸出
for(i=0;i<100;i++){
printf("%d",numbers[i]);
}

printf(" ");

system("pause");
return0;
}

2. C語言中怎麼給數組賦隨機值

看代碼:

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#defineN9
voidmain()
{
inti;
inta[N];
srand(time(0));//以時間為種子,每次生成不同的數
for(i=0;i<N;i++)
{
//生成[5,10]之間的整數
a[i]=rand()%6+5;//rand()生成數的范圍在[a,b)寫成:a[i]=a+rand()%(b-a);
}

for(i=0;i<N;i++)
printf("%d",a[i]);
puts("");

}



這里注意一下rand()需要生成數據的范圍公式,即:

范圍在[a,b)寫成:a[i]=a+rand()%(b-a)

3. 如何用隨機數給數組賦值

C語言的隨機數函數為rand(), 該函數可以獲得一個隨機的整數。

所以用隨機數給數組賦值的過程,就是把rand()的返回值賦值給數組每個元素的過程。

代碼:

inta[10],i;
for(i=0;i<10;i++)
a[i]=rand();

4. c語言數組隨機賦值且去重

//vs2013運行,根據條件如不可運行可添加#include"stdafx.h"

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

#defineLEN8//數組的長度,可更改

/*返回數組類型,參數1傳入數組,參數2數組長度,參數3,隨機數的閾值(上限值)*/
int*arr_rand(intnums[],intn,intlim)
{
inti=0;
intj;
enummark{NO,YES};//由於vs2013不支持bool類型,我採取枚舉類型代替
enummarkflag;
srand((unsignedint)time(NULL));
while(i<n)
{
nums[i]=rand()%lim;
if(i>0)
{
flag=YES;
for(j=0;j<i;j++)
{
if(nums[i]==nums[j])
{
flag=NO;
}
}
if(flag)
{
i++;
}
}
if(i==0)//放下邊避免程序錯誤
{
i++;
}
}
returnnums;
}
//測試函數,如需使用則在main函數中arr_rand_t();調用即可
voidarr_rand_t()
{
intnums[LEN];
inti=0;
intlim=21;
arr_rand(nums,LEN,lim);
for(;i<LEN;i++)
{
printf("%d ",nums[i]);
}
}

5. c語言怎麼定義一個數組並隨機賦值

用隨機數
srand( (unsigned)time( NULL ) );
for(i=0;i<=5;i++)//假設數組是5
{
a[i]=( rand()%100+1);
}
可以實現,記得包含頭文件
time.h和stdlib.h

6. C語言數組隨機賦值排序

#include <stdio.h>
#include <stdlib.h>
int cmp(const void* a, const void* b)
{
return *(int*)a - *(int*)b;
}
int main()
{
int k, i;
int* arr;
printf("請輸入一個3位數作為一維數組的維數:");
scanf("%d", &k);
printf("生成隨機數組:\n");
arr = (int*)malloc(k * sizeof(int));
for(i = 0; i < k; ++i)
{
arr[i] = rand();
printf("%d ", arr[i]);
}
printf("\n");
printf("排序後的數組:\n");
qsort(arr, k, sizeof(int), cmp);
for(i = 0; i < k; ++i)
{
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}

7. C語言數組隨機賦值

#include<stdio.h>

#include<time.h>
#define M 5
#define N 5
void main()
{ int a[M][N],*p,r,i,j,n;
srand((unsigned int)time(NULL));
p=a; for ( i=0;i<M*N;i++,p++ ) (*p)=0;
n=rand()%4+4; //決定生成幾個-1,取值4~7
for ( i=0,p=a;i<n;i++ )
{ while ( 1 )
{ r=rand()%(M*N); //隨機生成數組下標,取值0~M*N-1
if ( p[r]==0 ) break; //如這個下標已經被賦值過則重新選下標,否則退出循環
}
p[r]=(-1);
}
for ( i=0;i<M;i++,printf("\n") ) for ( j=0;j<N;j++ ) printf("%d ",a[i][j]);
}

8. 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;
}

9. 如何 在c語言中 給數組賦隨機值

#include<stdio.h>
#include<stdlib.h> //准備使用隨機生成函數
#include<time.h> //為了給隨機函數指定每次不同的種子值,准備使用時間函數
#define N 100
void main() { int a[N],i;
srand((unsigned int)time(NULL)); //取當前時間當隨機數種子
for ( i=0;i<N;i++ ) a[i]=rand()%100+1; //生成隨機數范圍在[1,100]區間
for ( i=0;i<N;i++ ) printf("%d ",a[i]); printf("\n");
}
rand()函數生成隨機數區間為[0,65535]
如果要生成[a,b]之間的隨機數:rand()%(b-a+1)+a
rand()%100生成隨機數范圍[0,99]
rand()%100+1生成[1,100]

10. C語言調用隨機函數為數組賦值

#include "stdio.h"
#include <stdlib.h>
#include <time.h>
int suiji(int *s,int d)
{
int i;

for(i=0;i<7;i++)
s[i] = ((rand() % d) + 1);
return 0;
}
void main()
{
int c[7]={0};
srand((unsigned)time(NULL));
suiji(c,100);
int i;
for(i=0;i<7;i++)
printf("%d ",c[i]);
}

熱點內容
莫迪訪問爭議地區 發布:2025-01-24 03:00:10 瀏覽:996
安卓車載視頻如何刪除軟體 發布:2025-01-24 02:54:22 瀏覽:616
伺服器暫時無法運行是什麼意思 發布:2025-01-24 02:45:59 瀏覽:146
配置最高的千元機哪個好 發布:2025-01-24 02:38:49 瀏覽:239
如何破解軟體登錄不了伺服器 發布:2025-01-24 02:05:07 瀏覽:14
春節三新演算法 發布:2025-01-24 02:03:22 瀏覽:20
我的世界伺服器房間號2020電腦版 發布:2025-01-24 01:28:05 瀏覽:401
微信提示存儲空間不足 發布:2025-01-24 01:19:53 瀏覽:966
安卓電腦管家如何清除緩存 發布:2025-01-24 00:55:42 瀏覽:150
怎麼上傳歌曲到qq音樂 發布:2025-01-24 00:45:30 瀏覽:67