Código:
Entonces en la función quiero añadir nuevas entradas a el array etructura.struct libros{ char titulo[20]; char autor[20]; }libros[10]; int i;
Código:
Uso i para definir la posicion en la qual voy a introducir los datos, ya que anteriormente he introducido datos procedentes de un fichero.void intro(){ char a; int mas=1; printf("Deseas introducir algun libro ?(s/n): "); scanf("%c",&a); if(a=='s' || a=='S'){ while(mas!=0){ printf("\n"); printf("Introduzca el titulo: "); gets(libros[i+1].titulo); printf("Introduzca el autor: "); gets(libros[i+1].autor); printf("Desea introducir mas libros ?(1-si,2-no) "); scanf("%d",&mas); } } }
El problema es que hace como si el primer gets no estuviese, i en canvio el otro si que funciona, y la verdad es que no tengo ni idea de porque pasa esto...