




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
算法實現動畫演示范俊選擇排序算法設計思路(以數組a[n]為例):將a[0]依次與后面的元素比較大小,如果a[0]的值大于其他元素的值,則交換。比較完一輪后,a[0]中存放的時所有元素值的最小值;a[0]不動,將a[1]依次與后面的元素比較大小,如果a[1]的值大于后面元素的值,則交換。比較完該論后,a[1]中存放的是除a[0]以外的最小值;依此類推,最后比較a[n-2]和a[n-1]的值,a[n-2]中存放兩個數中的小值,則a[n-1]存放的就是整個數組的最大值。選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}printf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}注意:該PPT采用單步運行的方式演示了選擇排序法的實現過程,并實時顯示各變量的值。選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n
j
printf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}定義變量,賦初值i選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n0i
jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}i=0時,表示數組第1個元素與后面的元素比較,將比較的較小數存入第1個元素中,比較的最終結果是數組中最小數存入數組第1個元素。選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n0i1jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=1時,比較變量s[0]和s[1]中值的大小,將較小數存入s[0]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n0i1jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=1時,比較變量s[0]和s[1]中值的大小,將較小數存入s[0]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n0i2jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=2時,比較變量s[0]和s[2]中值的大小,將較小數存入s[0]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n0i2jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=2時,比較變量s[0]和s[2]中值的大小,將較小數存入s[0]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n0i3jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=3時,比較變量s[0]和s[3]中值的大小,將較小數存入s[0]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n0i3jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=3時,比較變量s[0]和s[3]中值的大小,將較小數存入s[0]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n0i4jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=4時,比較變量s[0]和s[4]中值的大小,將較小數存入s[0]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n0i4jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=4時,比較變量s[0]和s[4]中值的大小,將較小數存入s[0]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n0i5jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=5時,條件5<5為假,循環(huán)結束。數組最小值存入s[0]。選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n1i5jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}i=1時,表示數組第2個元素與后面的元素比較,將比較的較小數存入第2個元素中,比較的最終結果是參與比較的元素的最小數存入數組第2個元素。選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n1i2jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=2時,比較變量s[1]和s[2]中值的大小,將較小數存入s[1]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;23957s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n1i2jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=2時,比較變量s[1]和s[2]中值的大小,將較小數存入s[1]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;29357s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n1i2jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=2時,比較變量s[1]和s[2]中值的大小,將較小數存入s[1]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;29357s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n1i3jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=3時,比較變量s[1]和s[3]中值的大小,將較小數存入s[1]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;29357s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n1i3jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=3時,比較變量s[1]和s[3]中值的大小,將較小數存入s[1]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;29357s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n1i4jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=4時,比較變量s[1]和s[4]中值的大小,將較小數存入s[1]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;29357s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n1i4jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=4時,比較變量s[1]和s[4]中值的大小,將較小數存入s[1]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;29357s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n1i5jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=5時,條件5<5為假,循環(huán)結束。數組剩余元素的最小值存入s[1]。i=2時,表示數組第3個元素與后面的元素比較,將比較的較小數存入第3個元素中,比較的最終結果是參與比較的元素的最小數存入數組第3個元素。選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;29357s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n2i5jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;29357s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n2i3jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=3時,比較變量s[2]和s[3]中值的大小,將較小數存入s[2]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;29357s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n2i3jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=3時,比較變量s[2]和s[3]中值的大小,將較小數存入s[2]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;27359s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n2i3jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=3時,比較變量s[2]和s[3]中值的大小,將較小數存入s[2]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;27359s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n2i4jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=3時,比較變量s[2]和s[3]中值的大小,將較小數存入s[2]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;27359s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n2i4jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=3時,比較變量s[2]和s[3]中值的大小,將較小數存入s[2]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;25379s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n2i4jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=3時,比較變量s[2]和s[3]中值的大小,將較小數存入s[2]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;25379s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n2i5jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=4時,比較變量s[2]和s[4]中值的大小,將較小數存入s[2]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;25379s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n3i5jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}i=3時,表示數組第4個元素與后面的元素比較,將比較的較小數存入第4個元素中,比較的最終結果是參與比較的元素的最小數存入數組第4個元素。選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;25379s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n3i4jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=4時,比較變量s[3]和s[4]中值的大小,將較小數存入s[3]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={2,9,3,7,5},n=5,i,j,t;25379s[0]s[1]s[2]s[3]s[4]for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(s[i]>s[j])
{t=s[i];s[i]=s[j];s[j]=t;}5n3i4jprintf(“%d%d%d%d%d\n”,s[0],
s[1],s[2],s[3],s[4]);}j=4時,比較變量s[3]和s[4]中值的大小,將較小數存入s[3]選擇法演示(升序)程序段:#include<stdio.h>main(){ints[10]={
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 軟件測試中的質量控制與保證機制試題及答案
- 道路冷補修復材料試題及答案
- 計算機三級考試新趨勢試題及答案
- 嵌入式系統(tǒng)調試技巧考題試題及答案
- 數據庫存儲過程撰寫技巧試題及答案
- 通信設備專業(yè)高頻信號處理維修考核試卷
- 四級軟件測試工程師訪問量提升試題及答案
- 基于MySQL的后臺數據庫管理技巧試題及答案
- 嵌入式系統(tǒng)的市場潛力分析試題及答案
- 敏捷實踐下的測試反饋循環(huán)試題及答案
- DB32/T 4220-2022消防設施物聯網系統(tǒng)技術規(guī)范
- 車位轉讓合同協(xié)議書
- 合伙經營貨車輛協(xié)議書
- 2025年農村個人果園承包合同
- 湖北省武漢市2025屆高三年級五月模擬訓練試題數學試題及答案(武漢五調)
- 醫(yī)師掛證免責協(xié)議書
- 2025年數控技術專業(yè)畢業(yè)考試試題及答案
- 上海市2024年初中語文學業(yè)水平考試試卷真題(精校打?。?/a>
- 濟南民政離婚協(xié)議書
- 車牌租賃協(xié)議和抵押合同
- 2025年內蒙古自治區(qū)初中學業(yè)水平考試數學模擬試題 (一)(含答案)
評論
0/150
提交評論