选择排序
2013-10-08 00:00
141 查看
#include <stdio.h> void SelectSort(int ns[], int n) { int i, j, k, tmp; for (i=0; i<n; ++i) { tmp = ns[i]; k = i; for (j=i; j<n; ++j) { if (tmp > ns[j]) { tmp = ns[j]; k = j; } } if (i != k) { ns[i] ^= ns[k]; ns[k] ^= ns[i]; ns[i] ^= ns[k]; } } } int main() { int ns[10] = {0}; int i; for (i=0; i<10; ++i) { scanf("%d", ns+i); } for (i=0; i<10; ++i) { printf("%d, ", ns[i]); } printf("\n"); SelectSort(ns, 10); for (i=0; i<10; ++i) { printf("%d, ", ns[i]); } printf("\n"); return 0; }