經常使用的C說話排序算法(兩種)。本站提示廣大學習愛好者:(經常使用的C說話排序算法(兩種))文章只能為提供參考,不一定能成為您想要的結果。以下是經常使用的C說話排序算法(兩種)正文
1.
請求輸出10個整數,從年夜到小排序輸入
輸出:2 0 3 -4 8 9 5 1 7 6
輸入:9 8 7 6 5 3 2 1 0 -4
處理辦法:選擇排序法
完成代碼以下:
#include <stdio.h> int main(int argc, const char * argv[]) { int num[10],i,j,k,l,temp; //用一個數組保留輸出的數據 for(i=0;i<=9;i++) { scanf("%d",&num[i]); } //用兩個for嵌套輪回來停止數據年夜小比擬停止排序 for(j=0;j<9;j++) { for(k=j+1;k<=9;k++) { if(num[j]<num[k]) //num[j]<num[k] { temp=num[j]; num[j]=num[k]; num[k]=temp; } } } //用一個for輪回來輸入數組中排序好的數據 for(l=0;l<=9;l++) { printf("%d ",num[l]); } return 0; }
2.
請求輸出10個整數,從年夜到小排序輸入
輸出:2 0 3 -4 8 9 5 1 7 6
輸入:9 8 7 6 5 3 2 1 0 -4
處理辦法:冒泡排序法
完成代碼以下:
#include <stdio.h> int main(int argc, const char * argv[]) { //用一個數組來存數據 int num[10],i,j,k,l,temp; //用for來把數據一個一個讀取出去 for(i=0;i<=9;i++) { scanf("%d",&num[i]); } //用兩次層for輪回來比擬數據,停止冒泡 for(j=0;j<9;j++) { for(k=0;k<9-j;k++) { if(num[k]<num[k+1]) //num[k]<num[k+1] { temp=num[k]; num[k]=num[k+1]; num[k+1]=temp; } } } //用一個for輪回來輸入數組中排序好的數據 for(l=0;l<=9;l++) { printf("%d ",num[l]); } return 0; }
以上所述是小編給年夜家引見的經常使用的C說話排序算法,願望對年夜家有所贊助,假如年夜家有任何疑問請給我留言,小編會實時答復年夜家的。在此也異常感激年夜家對網站的支撐!