这段代码为什么在输入书名时会一直显示书名已重复
void add()//增加
{
Book * book, * p;
book->bookisbn;
book=(Book * )malloc(sizeof(Book));
book->bookname=(char * )malloc(50);
memset(book->bookname,0x00,50);
book->bookauthor=(char * )malloc(50);
memset(book->bookauthor,0x00,50);
book->booknum=0;
book->next=NULL;
printf("请输入书的编号:");
scanf("%d",&book->bookisbn);
printf("请输入书名:");
scanf("%s",book->bookname);
p=head;
while(p!=NULL)
{
if(p->next!=NULL&&strcmp(p->next->bookname,book->bookname)==0);
{
printf("该书已存在,请重新输入:");
scanf("%s",book->bookname);
p=head;
continue;
}
p=p->next;
}
printf("请输入书的作者:");
scanf("%s",book->bookauthor);
printf("请输入书的数量:");
scanf("%d",&book->booknum);
p=head;
while(p!=NULL)
{
if(p->next==NULL)
{
break;
}
p=p->next;
}
p->next=book;
}