Tu problema parece mas un error de dedo. Te dara risa cuando te des cuenta...
Cita: if(strcmp("u",libro.nombre)== 0)
Esa es tu linea problema.
strcmp tiene como argunmento 2 cadenas, de acuerdo???
Tu quieres comparar la cadena que obtuviste con scanf, con la cadena que hay en libro.nombre, cierto???
Entonces por que pones
u entre comillas????
Estas buscando "u"????
No. Estas buscando el contenido de la variable u.
Espero que te sirva.
Saludos