typedef struct book
{
int number;
char name[20];
int jaige;
}stumes;
typedef struct tagnode
{
stumes data;
struct tagnode *next;
}node;
node *head=NULL;
void charu()
{
int num,i;
node *p,*q;
p=head;
printf("请输入你要插入位置: ");
scanf("%d",&num);
{
printf("请输入你要插入的:\n");
q=(node *)malloc(sizeof(node));
scanf("%d %s %c %d %d",&q->data.number,q->data.jaige,q->data.name);
while(p!=NULL)
{
if(p->data.number==q->data.number)
{
printf("该学号已经存在,无法插入!\n");
return ;
}
p=p->next;
}
p=head;
for(i=0;i
p=p->next;
q->next=p->next;
p->next=q;
printf("插入成功!\n");
return ;
}
}
编译时通过了的,应该是逻辑上出了问题。