In addition to what Woody said, if this happens regularly, it may be a sign that the guest does not understand ACPI (for example, an XP virtual machine imported from Parallels will have this problem). In this specific case, adding the following line to the .vmx config file (while the virtual machine is powered off and Fusion isn't running) will help:
gui.exitOnCLIHLT = "TRUE"