#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <sys/wait.h>
#include <stdlib.h>

int main()
{
	pid_t pid, w;
	int i, status;
	char value[3];

	for(i=0; i<3; ++i)
	{
		if((pid=fork()) == 0)
		{
			sprintf(value, "%d", i);
			execl("child", "child", value, (char *) NULL);
		}
		else
			printf("Forked child %d\n", pid);
	}

	while ((w=wait(&status)) && w!=-1)
	{
		printf("Wait on PID: %d returns status: %04X\n", w, status);
	}

	exit(0);
}
