I'm tring to make this program work, but after giving it a lot of turns, I decided is time to ask. No matter what I do the result is always a segmentation fault and I pretty much sure that is for the strcmp. Can you help me please?
#include <stdio.h>
#include <string.h>
void main ()
{
char *marcas[7] = {"Alfa Romeo", "Fiat", "Ford", "Lancia", "Renaudl", '\0', '\0'};
char *marca, *aux;
int i;
int cont=5;
marca=" ";
aux=" ";
for(i=0;i<cont;i++)
printf("%s\n",marcas[i]);
while (cont<7){
printf("Ingrese la marca que desee agregar a la lista.\n");
scanf("%s",marca);
printf("Gracias. Ud. quiere agregar la marca: %s.\n", marca);
i=0;
while(strcmp(marcas[i], marca)<0 && i<cont){
i++;
printf("Moviendo puntero.\n");
}
printf("Termine de mover.\n");
if (i < cont){
while (i<cont){
strcpy(aux,marcas[i]);
strcpy(marcas[i],marca);
strcpy(marca,aux);
i++;
}
}
printf("%s tiene que ir en la posicion %d\n", marca, i);
strcpy(marcas[i],marca);
cont++;
for(i=0;i<cont;i++)
printf("%s\n", marcas[i]);
printf("La marca ingresada última a la lista:%s\n", marca);
}
for(i=0;i<7;i++)
printf("%s\n", marcas[i]);
}