I have found that generally when it does that, it means that there is a bad pointer somewhere.
Did you specify the slot of the accelerometer? If you specify the wrong one, or really if specify *something* wrong when creating it then you will get bad results, because the internal functions reference an object and if it never gets created... then invalid memory references happen. You might want to try launching a target console and see if there are error messages there, since the WPILib does not break into the debugger when asserts occur (which is incredibly annoying, actually).
You could also try running the code in my test harness (
http://www.chiefdelphi.com/forums/sh...d.php?t=75811), though I don't think it supports accelerometers -- but many other problems (like NULL pointers and such) its pretty good at catching.