brudnakm is right on about the string. You may also want to be careful mixing members of the fgets() and scanf() tribes. Used together, you may get unexpected results (usually losing characters).
Might be better (especially when receiving user) input to use fgets() throughout and convert the...