求助——父子进程无名管道程序,急盼回复!!!

在下面的程序中,父进程首先创建无名管道,再创建一个子进程;然后从键盘上读入一个Shell命令串(如 ls -l ),并通过无名管道向子进程发送该命令串;父进程等待子进程终止。子进程通过管道读到命令串并执行该命令后返回。子进程然后打印“Cmmand  Completed.”后终止自己。父进程在子进程完成任务后,显示返回状态后结束运行。
在下面程序的划线编号处填写适当的语句。
char cmd [100];
void main()
{
    int pid, status, chan[2];
   
    ________________(1)________________       

    if (_________________(2)__________________) {
        close (chan[0]);
        printf("canmand= ");
        gets(cmd);
        
        __________________(3)___________________________
        close (chan[1]);
        sleep(5);

        ____________________(4)______________________       
        printf("status= %d\n", status);
                return;
    } else {
        close (chan[1]);
        bzero (cmd, sizeof(cmd));       
  
      ______________(5)________________________  

__________________(6)______________________
        printf("Cmmand Completed.\n");
        exit(2);
    }
}