Your notebook boots the operating system off your hard drive at startup so if you are having intermittant problems (you say it is still working at times) than perhaps either you have a connection issue with the hard drive (loose cable between hard drive and motherboard --can get loose especially if you travel with the notebook alot or there is a lot of vibration (in car, etc) or you may have a hard drive that is partially corrupted or failing.
A hard drive is not too expensive to replace and if it is just the connection that would cost nothing if you know how to open the area housing the hard drive (usually in bay underneath the notebook) and check that.
If the notebook is under warranty then you should be able to get a replacement hard drive or have them check it.
If not under warranty you should be able to have someone help you and even put a new hard drive in (you would have to reload the operating system and programs or transfer the contents of your hard drive to it using Symantec Ghost, etc) but again that would not cost too much if that is the case.
The things too expensive to repair are motherboard failure or LCD failure (or even video card failure in a notebook) but your hard drive or its connection seems to be the issue here.
after a crash, I couldn't start my laptop. It always shows a message:" cannot find the operating system ", only occasionally I can start it successfully, most of the time what I can see is that message. can anybody please help? thanks in advance.

Chowhound
Comic Vine
GameFAQs
GameSpot
Giant Bomb
TechRepublic