Board logo

標題: 排序 (二) [打印本頁]

作者: 陳曜誌    時間: 2024-8-5 22:50     標題: 排序 (二)

產生10個範圍介於1~20之不重複隨機亂數, 並利用選擇排序法將它們由小而大排列出來.



本帖隱藏的內容需要回復才可以瀏覽

作者: 陳曜誌    時間: 2024-8-6 14:52

本帖隱藏的內容需要回復才可以瀏覽

作者: 李昱辰    時間: 2024-8-6 20:06

  1. #include<iostream>
  2. #include<ctime>
  3. using namespace std;
  4. int main()
  5. {
  6.     int s[10];

  7.     srand(time(NULL));
  8.     for(int i=0;i<10;i++)
  9.     {
  10.         s[i]=rand()%20+1;
  11.         for(int j=0;j<i;j++)
  12.         {
  13.             if(s[i]==s[j])
  14.             {
  15.                 i--;
  16.                 break;
  17.             }
  18.         }
  19.     }

  20.     for(int i=0;i<9;i++)
  21.     {
  22.         for(int j=i+1;j<10;j++)
  23.         {
  24.             if(s[i]>s[j])
  25.             {
  26.             int tmp=s[i];
  27.                 s[i]=s[j];
  28.                 s[j]=tmp;
  29.             }
  30.         }
  31.     }
  32.     cout<<"10個範圍介於1~20之不重複隨機亂數,由小而大依序為:"<<endl;

  33.     for(int i=0;i<10;i++)
  34.     {
  35.         cout<<s[i]<<" ";
  36.     }
  37. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/) Powered by Discuz! 7.2