Over time my pitch has improved simply through singing more, but I still have some problems with being a bit off sometimes (or way off on very high or very low notes). It helps if I focus on a specific pitch and experiment a little till I hit it, but this doesn't seem to have a long-term effect and sometimes I just can't force my voice to hit the right note. What should I do to improve this? Unfortunately, going to an instructor isn't an option right now.
I have often found it helpful to use mental cues to aid pitch when I'm having trouble. I have heard many choral directors, as well as my own college voice professor, talk about 'landing on top of the pitch'.
This really has to do with a sort of 'musical momentum,' almost as if our pitch were an object governed by Newton's first law. When a melodic line is moving downward, especially when singing loudly, there is a tendency to allow the pitch to fall too far. When a melodic line is moving in a generally upward direction, there is a tendency to not climb quite high enough.
These rules apply very strongly to sensitive pitches in a key. While moving upward, the third and seventh of the major key have more of a tendency to become flat, for example.
In my experience, it has been most helpful to guard any pitch that moves with multiple notes in one direction. This is especially helpful if one has a basic knowledge of music theory so that one can identify the 'sensitive pitches' in each piece of music.
Okay, I've been working a while with many different fields of music... I certainly wouldn't say that vocals are my specialty; however, rather than doing what every other answer suggests (having you use a program that "trains" your intonation to become more in tune), I think it'd be a lot more effective and genuine if you were to just simply work on the concept of developing your abilities to detect and utilize consonance (the concept of a note being complementary to another sounding note). So, in the case of developing your ability to become more "accurate" with intonation, try to gain an appreciation for developing a skill of harmonic consonance more so than singing in unison with a note. By doing so, I thoroughly belive that your ear will be more adaptive and trained to handle singing IN UNISON when you need to.
In the case of a sustained C, for example, other notes you should try singing to develop a sense of harmonic consonance would be E, F, G, and A. Hope this helps. If not, try someone else's answer!^^
Best of luck!~ ;D
EDIT: To emphasize, this is important for developing a sense of how that OTHER note fits harmonically (and melodically) into a song/chord/section/anything.
SECOND EDIT: I seemed to have excitedly overlooked a very important aspect of what you were saying in your initial comment, that is, you can HEAR the dissonance (which is good), but focusing on achieving consonance over (the inverse) avoiding dissonance (by my personal philosophy) is key.
For example, some people play chess with a mindset of not getting into a certain situation or not losing (rather than playing with a mindset of winning or trying to force the other player into a certain situation). So, in this case, I feel that, rather than avoiding dissonance, you should try to gravitate your efforts in finding consonance... To find consonance, you don't HAVE TO sing in unison with the note in question.
And, then again, a lot of people are good at chess by simultaneously working on both approaches; I'm sure the same can be said about vocal intonation. I dunno, I guess I've over-emphasized what I'm trying to say, but really, I feel there are usually multiple solutions to solving a problem.
Search on youtube for singing exercises for your range. These exercises should just be a bunch of piano notes.
On these exercises practice your vowels a lot. The 'ah' sound and 'eh' sounds are always a bit harder than the 'ii' sound for example. So start one of these tracks and sing 'ah-ah-ah' both legato en staccato on these notes.
Make sure you are not putting too much strain on the very low and very high notes in your range. You should try to sing these with as less tension as possible, even if they sound pretty soft. Over time you will master these notes and then you can 'shape' them to the sound you want.
Also practice your 'note-stamina', how long you can hold a note for while on pitch. Use some sort of instrument or learn how to use a software like Ableton or Pro-Tools or Logic (even Garage Band or Fruity Loops) and enter long-notes in the MIDI sequencer.
Your diction can also push you off-pitch. When singing in high notes try to first sing the phrase without putting emphasis on the consonants. Then slowly, when you start to feel you're getting some control over the phrase, you can pronounce the consonants like they should be.
Lastly I would advice you to start paying great attention to your vibrato. After doing these exercises you should do them again only this time you're going to add vibrato. Basically if you are singing a note and you can apply a good vibrato (and with good I mean a nice controlled and on-beat vibrato) then you are using proper technique as well.
When using vibrato make sure you aren't using your jaw to produce the vibrato. And also make sure you are not using your diaphragm for this either (sometimes people think they use vibrato when in fact they are modulating the volume instead of the pitch by contracting and expanding the diaphragm really quickly).
Good question. I have a suggestion. As an exercise devise a program that randomly generates a pleasing tone in the range of your voice then you try to match it. The program listens and gives you a score on how close you got it. The next level the program requests you to sing a perfect 5th above (adjusting its range so you are not asked to go beyond your range). The subsequent levels ask for different intervals above or below the given pitch, again adjusting for your range and listening and grading your response. Over time you can look at your scores to see if a randomized pitch follow is useful tool to assist in your progress.
Alternately, if you do not have programming skills, you can ask a friend to play notes from a piano. Same thing but no computer needed.