Like all the scanf modes, the %[ leaves the new-line in the buffer; unlike many of the scanf modes, %[ will not skip over that whitespace when it is used again (%f is fine, for instance, because it will explicitly throw away any new-lines or other white space before the number). So what I should have recommended was
Code:
scanf(" %49[^\n]", wagen1.modell);
because the explicit space in the format string will then match any (or none) of that extra guff that's already there.