Scripts tags normally shouldn't be shown, regardless of where they are. It is perfectly OK to put scripts in <body>.
You most likely have a syntax error in your HTML, such as a mis-matched start and end tags for a node. Validate your HTML and, or use an editor or editor plug-in that will show you your HTML syntax errors.
I can think of at least one way a script tag might show, and that's if it is inside of <pre></pre>