1樓:匿名使用者
你好!!
你的**就沒有輸出部分呀
輸出部分新增了,你看看吧
#include "stdlib.h"
#include"stdio.h"
#include"time.h"
void main()
{ int n ,a[50],i,j,t;
srand(time (null));
for(i=0;i<50;i++)
{a[i]=rand()%90+10;
for(j=0;j
2樓:雙龍鬥
你的方法不好,給你推薦一個。
#include "stdlib.h"
#include"stdio.h"
#include"time.h"
#define max_rand 90
#define max_size 50
void main()
int last = max_rand;
int rank = 0;
int temp = 0;
for(i = 0;i < max_size;i ++)for (i = 0;i < max_size; i++)}printf_s("\n") ;}
3樓:匿名使用者
好像沒問題,沒列印?
c語言。用隨機函式rand產生50個10-99的互不相同的整數放入陣列a,按從大到小排序,並按每行10個輸出。
4樓:
#include
#include
#include
int tab[50];
int num=50;
void print(void)
int i=0,j=0;
for(i=0;iprintf("%5d ",tab[i]);
j++;
if(j%10==0)
putchar('\n');
putchar('\n');
}void init(void)
int i=0,j=0,k=0,m=0,temp;
int a[100];
srand((unsigned)time(null));
k=100;
for(i=0;i<100;i++)
a[i]=i;
for(i=0;itemp=rand()%k;
tab[i]=a[temp];
for(m=temp+1;ma[m-1]=a[m];
k--;
printf("\n排序前元素值:\n");
print();
void exchange(int*a,int*b)int temp=0;
temp=*a;
*a=*b;
*b=temp;
}int partition(int*a,int p,int r)int temp=0,i=0,j=0;
temp=a[r];
i=p-1;
for(j=p;jif(a[j]>=temp)i++;
exchange(&a[i],&a[j]);
exchange(&a[i+1],&a[r]);
return i+1;
}void quicksort(int*a,int p,int r)int q=0,i=0;
if(pq=partition(a,p,r);
quicksort(a,p,q-1);
quicksort(a,q+1,r);
}void sortprint(void)printf("\n排序後元素值:\n");
print();
int main()
init();
quicksort(tab,0,num-1);
sortprint();
return 0;
使用隨機函式產生50個10—99的隨機整數放入陣列a中,再按從小到大的順序排序,並以每行10個資料輸出。
5樓:
#include
#include
#include
void main()
for(t=0;t<49;t++)
for(i=t+1;i<50;i++)
if(a[t]>a[i])
for(i=0;i<50;i++)}
c語言rand怎麼隨機產生浮點型數
問明 include include include define max random 1000 這個是產生隨機數的最大值,但是取浮點數,所以要除去的 define num 2500 double random double a,double b 這個是產生隨機數函式,由於庫函式功能有限,所以要自...
c語言rand函式
90就是產生的隨機數對90取餘,那麼結果肯定是在0到89之間,結果再加上10,不就是10到99之間了 rand函式功能為獲取乙個偽隨機數 偽隨機數的概念下面會有介紹 一 函式名 rand 二 宣告 int rand 三 所在標頭檔案 stdlib.h 四 功能 返回乙個偽隨機數。之所以說是偽隨機數,...
c語言編寫程式利用rand函式產生100以內的隨
小夏在深圳 源 如下 srand include main int i,j for i 0 i 100 i j 1 int 10.0 rand rand max 1.0 printf d j 擴充套件資料 1 rand 的內部實現是用線性同餘法做的,它不是真的隨機數,因其週期特別長,故在一定的範圍裡...