#include <stdio.h>
#include <stdlib.h>
typedef int T;
void swap(T *a, T *b) {
T t;
t = *a;
*a = *b;
*b = t;
}
void bsort(T *data, int n) {
int i, j;
int flag;
for (i = 0; i < n - 1; i++) {
flag = 1;
for (j = n - 2; j >= i; --j)
if (data[j] < data[j + 1]) {
swap(&data[j], &data[j + 1]);
flag = 0;
}
if (flag)
break;
}
}
int main() {
int n, i;
T *data;
printf("n = ");
while (scanf("%d", &n) != 1)
;
if ((data = malloc(sizeof(T) * n)) != NULL) {
i = 0;
while (i < n) {
printf("%d: data = ", i + 1);
if (scanf("%d", &data[i]) == 1)
i++;
}
for (i = 0; i < n; i++)
printf("%d, ", data[i]);
putchar('\n');
bsort(data, n);
for (i = 0; i < n; i++)
printf("%d, ", data[i]);
putchar('\n');
free(data);
}
return 0;
}
/* end */