写一函数, 用“起泡法”对输入的10 个数字按由小到大的顺序排序。
方法一:
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
#include <stdio.h>
int main() { int sort(); int a[10], k; printf("Pealse enter 10 integer number: \n"); for(k=0; k<10; k++) { scanf("%d", &a[k]); } sort(a); } int sort(int * b) { int t, i, j; for(j=0; j<9; j++) { for(i=0; i<9–j; i++) { if(b[i] > b[i+1]) { t = b[i]; b[i] = b[i+1]; b[i+1] = t; } } } printf("The sorted numbers: \n"); for(i=0; i<10; i++) { printf("%d", b[i]); } printf("\n"); } |
方法二:
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
#include <stdio.h>
#define N 10 int main() { int a[N], i, j; printf("please enter %d integer: \n", N); for(i=0; i<N; i++) { scanf("%d,", &a[i]); } for(i=0; i<N–1; i++) { for(j=0; j<(N–1)–i; j++) { if(a[j] > a[j+1]) { a[j] ^= a[j+1]; a[j+1] ^= a[j]; a[j] ^= a[j+1]; } } } printf("The sort of those integer is: \n"); for(i=0; i<N; i++) { printf("%d,", a[i]); } return 0; } |