A、物体做匀速直线运动,动能不变,势能可能变化,如匀速上升,故A错误;B、物体做匀加速直线运动,加速度恒定,合力恒定,但不一定只有重力或弹力做功,故机械能不一定守恒,故B错误;C、D、物体所受合外力不为零,处于非平衡态,机械能可能定守恒,如各种抛体运动,故C正确,D错误;故选C.