【正确答案】正确答案:(1)添加语句:strcpy(Author,Author_Name); (2)将“while()”补充完整为:while(m pBook!=NULL) (3)将“while()”补充完整为:while(P!=NULL) (4)将“while()”补充完整为:while(p!=NULL)
【答案解析】解析:(1)第1个标识下完成CBook类的构造函数,对成员变量整ID和作者Au~or进行初始化,因此第1个标识下应添加“strcpy(Author,Author_Name);”,利用strcpy函数,将Author Name数组内容拷贝到Author数组中。 (2)~CBooks0为CBooks类的析构函数,由于CBooks类在运行过程中会动态申请内存空间,因此在析构函数中必须将这些内存释放。CBooks类是由Node对象组成的链表,因此可利用循环逐个搜索这个链表,逐个释放内存空间,故第2个标识下应改为while(m pBook!=NULL),在while循环体不断的搜索下一个节点直到m pBook为空为止,删除所以节点。 (3)AddBookMenber(int nlD.char*Author)[~数在链表的最后添加一个新的节点,因此必须先找到最后一个节点,同样利用循环寻找最后一个节点,故第3个标识下为while(P!=NULL。 (4)GetBookAuthor(int nID)返回某个Node节点的CBook对象的ID为nlD的CBook对象的Author数组名,同样需要利用循环来查找各个节点CBook对象的ID是否为nlD,故第4个标识下应为while(p!=NULL)。