Liver problems like terin400 mentioned, smoking (which I doubt that you smoke), some medications as well as an unhealthy diet lacking in
Vitamin A,
B, zinc, protein, calcium and iron.
You may benefit from a multivitamin supplement suitable for your age group. But make sure that you eat a healthy and balanced diet consisting of meat, milk, cheese, yogurt, fresh fruit, vegetables and nuts. Brazil nuts contain zinc Cut out all the junk foods, fizzy drinks, sweets, cakes, biscuits, chocolate.