If you're craving sweets, one of the best things to eat is fruit! Not only does fruit have natural sugars to help you stop craving the processed ones in candy and cookies, it also has carbon, which could be what your body is missing. Bonus points if you go for grapes or cranberries, since they contain additional nutrients your body could be craving. If you're still craving sweets, try eating a food high in protein, especially cheese or turkey.
Cheese and turkey sandwich
A piece of fruit
Every source I looked at confirmed that a carb craving could stem out of a nitrogen deficiency. Nitrogen is found in high protein foods.
Your favorite protein source, whether it's a serving of nuts (or nut butter,) bean soup, or a chicken taco.
This source says a chocolate craving stems from a magnesium deficiency. Guess what? Cocoa has magnesium.
If you have no reason to avoid chocolate, have a piece of dark chocolate to boost your magnesium and kill the craving. Other magnesium sources include dark leafy greens and nuts.
Your body needs calcium! Dairy is a no-brainer solution for this, but if you don't eat dairy, dairy-free milk is a good option as well as these 18 foods.
Dark leafy greens
If you're craving salt, you probably need chloride. You know what the chemical name of table salt (NaCl) is? Sodium chloride. Try eating healthy sources of salt to nix your cravings.
I hope this helps! What food do you crave the most? (I crave Mexican and Chinese food all the time!)