產生不重複隨機數(c/c++)

來源:互聯網
上載者:User

標籤:

以冒泡排序法為例:

 1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<time.h> 4 int creatdata(int arr[],int n,int min,int max) 5 { 6     int i,j,flag; 7     srand(time(NULL));//creat data 8     if(max-min+1<n)return 0; 9     for(i=0;i<n;i++)10     {11         do12         {13             arr[i]=(max-min+1)*rand()/(RAND_MAX+1)+min;14             flag=0;15             for(j=0;j<i;j++)16             {17                 if(arr[i]==arr[j])18                 {19                     flag=1;20                 }21             }22         }23         while(flag);24     }25     return 1;26 }27 void bubblesort(int a[],int n)28 {29     int i,j,t;30     for(i=0;i<n;i++)31     {32         for(j=n-1;j>i;j--)33         {34             if(a[j-1]>a[j])35             {36                 t=a[j-1];37                 a[j-1]=a[j];38                 a[j]=t;39             }40         }41         /*printf("第%2d遍:",i+1);42         for(j=0;j<n;j++)43         printf("%d",a[j]);44         printf("\n");*/45     }46 }47 int main()48 {49     int i,a[6];50     for(i=0;i<6;i++)51     {52         a[i]=0;53         54     }55     if(!creatdata(a,6,1,100))56     {57         printf("產生隨機數不成功\n");58         return 1;59     }60     printf("原資料:");61     for(i=0;i<6;i++)62     printf("%d ",a[i]);63     printf("\n");64     bubblesort(a,6);65     printf("排序後:");66     for(i=0;i<6;i++)67     printf("%d ",a[i]);68     printf("\n");69     return 0; 70 }

 

產生不重複隨機數(c/c++)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.