#include <stdio.h>
#define MAX 10 //numero massimo di elementi in un array
/*****************************************************************
*la funzione swap realizza lo scambio dei elementi****
*****************************************************************/
void swap(int *x,int *y)
{
int temp;
temp = *x;
*x = *y;
*y = temp;
}
/****************************************************************
** bsort e' la funzione che realizza l'algoritmo *********
** di ordinamento, la funzione viene realizzata *******
** con due loop for che ordinano tute le coppie ******
** della lista dato in input ********************************/
void bsort(int list[], int n)
{
int i,j;
for(i=0;i<(n-1);i++)
for(j=0;j<(n-(i+1));j++)
if(list[j] > list[j+1])
swap(&list[j],&list[j+1]);
}
/***************************************************************
** la funzione readList legge dalla tastiera(stdin) *****
** un array di lungezza n**********************************/
void readlist(int list[],int n)
{
int i;
printf("Inserire gli elementi\n");
for(i=0;i<n;i++)
scanf("%d",&list[i]); //funzione per prendere dall stdin dei charatteri
}
/***************************************************************
** la funzione printlist, data un array di lungezza n ***
** lo stampa in stdout *************************************/
void printlist(int list[],int n)
{
int i;
printf("Gli elementi della lista sono: \n");
for(i=0;i<n;i++){
printf("%d\t",list[i]);
}
printf("\n");
}
int main()
{
int list[MAX], n;
printf("Inserire il numero degli elementi nella lista max = 10\n");
scanf("%d",&n);
readlist(list,n);
printf("La lista prima di ordinarla.\n");
printlist(list,n);
bsort(list,n);
printf("La lista dopo averlo ordinato.\n");
printlist(list,n);
return 0;
}