C 練習(xí)實(shí)例37 - 排序
題目:對(duì)10個(gè)數(shù)進(jìn)行排序。
程序分析:可以利用選擇法,即從后9個(gè)比較過(guò)程中,選擇一個(gè)最小的與第一個(gè)元素交換, 下次類推,即用第二個(gè)元素與后8個(gè)進(jìn)行比較,并進(jìn)行交換。
程序源代碼:
// Created by m.hgci.cn on 15/11/9. // Copyright © 2015年 W3Cschool教程. All rights reserved. // #include<stdio.h> #define N 10 int main() { int i,j,a[N],temp; printf("請(qǐng)輸入 10 個(gè)數(shù)字:\n"); for(i=0;i<N;i++) scanf("%d",&a[i]); for(i=0;i<N-1;i++) { int min=i; for(j=i+1;j<N;j++) if(a[min]>a[j]) min=j; if(min!=i) { temp=a[min]; a[min]=a[i]; a[i]=temp; } } printf("排序結(jié)果是:\n"); for(i=0;i<N;i++) printf("%d ",a[i]); printf("\n"); return 0; }
以上實(shí)例輸出結(jié)果為:
請(qǐng)輸入 10 個(gè)數(shù)字: 23 2 27 98 234 1 4 90 88 34 排序結(jié)果是: 1 2 4 23 27 34 88 90 98 234
更多建議: