Quote:
actual output is 19 how comes please explain it
Simple, you are in the gray zone, the C compiler is free to rewrite your code the it sees fit.
Any formula with multiple increment/decrement on same variable in unpredictable, the result can also change with versions of same compiler or can depend on optimizations options.