To prevent a large fluctuations of an idle speed when stopping purging.
In this controller, a normal feedback amount ISC is integrally controlled, when purging is not executed (S8). When purging is started, update of the normal feedback amount ISC is prohibited, and a value at the beginning of the purging is stored and maintained (S6). When purging is started, a value of the normal feedback amount ISC before the beginning of the purging is set to an initial value (S5), a purging feedback amount ISCp is updated (S7), and an idle speed is controlled to a target engine speed according to the purging feedback amount ISCp. In this state, when the purging is stopped, the purging feedback amount ISCp is switched to the normal feedback amount ISC stored and maintained until then (S8), and the feedback control is continued.
FURUYA JUNICHI