source: Deliverables/D2.2/8051/tests/tmp_tests/Frontend/bubble_sort.c @ 1525

Last change on this file since 1525 was 1525, checked in by ayache, 9 years ago

D2.2: function pointers using JMP.

File size: 813 bytes
Line 
1
2#define SIZE 5
3
4int min (int tab[], int size, int n) {
5  int i, min_index, min;
6
7  if (size == 0) return 0;
8
9  min_index = n;
10  min = tab[min_index];
11  for (i = n+1 ; i < size ; i++) {
12    if (tab[i] < min) {
13      min_index = i;
14      min = tab[min_index];
15    }
16  }
17
18  return min_index;
19}
20
21void swap (int tab[], int i, int j) {
22  int t;
23  t = tab[i] ; tab[i] = tab[j] ; tab[j] = t;
24}
25
26void bubble_sort(int tab[], int size) {
27  int i, min_index;
28
29  for (i = 0 ; i < size ; i++) {
30    min_index = min(tab, size, i);
31    swap(tab, i, min_index);
32  }
33}
34
35void print_tab (int tab[], int size) {
36  int i;
37
38  for (i = 0 ; i < size ; i++) {
39    print_sint(tab[i]);
40    space();
41  }
42  newline();
43}
44
45int main () {
46  int tab[SIZE] = {26, -21, 43, -62, 8};
47
48  bubble_sort(tab, SIZE);
49  print_tab(tab, SIZE);
50
51  return 0;
52}
Note: See TracBrowser for help on using the repository browser.