>>14
Because the abort call causes the program to return a non-zero value (typically EXIT_FAILURE), so when the !fork() expression is evaluated, it is false and the for loop never makes it through a single iteration. Only two forks of the program are spawned.