#include <stdio.h>
#include <string.h>
void ordenar(int n,char cad[50][30]);
void printa (int n,char cad[50][30]);
int main()
{
int n=0;
char cad[50][30];
puts("Introdueix cadenas(. para terminar):n");
do
{
printf("Cadena %d: ", n+1);
gets(cad[n]);
fflush(stdin);
}while((0!=strcmp(cad[n++],".")) || (n>50)); //ESTA CONDICION ESTA MAL CREO
n--; //elimino la ultima cadena
ordenar(n,cad);
printa(n,cad);
getchar();
getchar();
}
void ordenar(int n,char cad[50][30])
{
char *temp[30],i,elem;
/* depura esta parte del codigo
seguila paso a paso y fijate el contenido de lo que te marco */
for(elem=0; elem<n-1; elem++){
for(i=elem+1; i<n; i++){
if(strcmp(cad[elem],cad[i])>0) /*evalua el contenido de esta condicion */
{
*temp=*cad[elem]; /*fijate el contenido*/
*cad[elem]=*cad[i]; /*fijate el contenido*/
*cad[i]=*temp; /*fijate el contenido*/
}
}
}
}
void printa (int n,char cad[50][30])
{
int i;
printf("nLes cadenes ordenades alfabeticament son:n");
for(i=0; i<n; i++){
printf("nCadena %d: %s", i+1, cad[i]);
}
}