Pagini recente » Cod sursa (job #1662672) | Cod sursa (job #2919837) | Cod sursa (job #2350732) | Cod sursa (job #2571808) | Cod sursa (job #1229338)
#include <stdio.h>
#define MAX 500010
#define FIN "algsort.in"
#define FOUT "algsort.out"
FILE *fin, *fout;
int vec[MAX],n;
void read();
void sort();
void swap(int,int);
void write();
int main() {
read();
sort();
write();
return 0;
}
void read() {
int i;
fin = fopen(FIN, "r");
fscanf(fin, "%d", &n);
for(i = 0; i < n; i++) {
fscanf(fin, "%d", &vec[ i ]);
}
fclose( fin );
};
void sort() {
int i,
j,
swapped;
for(i = 0; i < n && swapped; i++) {
swapped = 0;
for(j = 0 ; j < n - i - 1; j++) {
if(vec[ j ] > vec[ j + 1 ]) {
swap(j, j + 1);
swapped = 1;
}
}
}
};
void swap(int a, int b) {
int temp;
temp = vec[ a ];
vec[ a ] = vec[ b ];
vec[ b ] = temp;
}
void write() {
int i;
fout = fopen(FOUT, "w");
for(i = 0; i < n; i++) {
fprintf(fout, "%d ", vec[ i ]);
}
fclose(fout);
};