An electronic control unit (23) determines whether a plurality of cylinders is misfiring based on a revolution speed fluctuation pattern of all of the cylinders. When it is detected that a plurality of cylinders (#1 to #8) is misfiring, the electronic control unit (23) obtains an integrated value of a revolution speed fluctuation amount in a specified number of cycles for each cylinder, and identifies two cylinders among the plurality of cylinders (#1 to #8) in the order of the integrated values from largest as the misfiring cylinders (#1 to #8).
展开▼