Does the program compile with no warnings?
Is the nominal path through the code clear?
Does the code avoid magic numbers?
Does the code anticipate divide-by-zero errors?
Are type conversion obvious?
Does the program avoid overflow problems?
Does the code prevent rounding errors?
Does the code avoid comparing floating point numbers for equality?
Does the code avoid using variables for more than one purpose?
Does the code reserve a parachute of memory for cleanup and exit on emergencies?