|
|
我想用结构体链表对结点实现实现增加,删除,修改,查找。请高手帮助。
我已经写了一个删除的,但是好像不对。请高手帮助
#include<stdio.h>
int main(void)
{
struct class
{
int num;
char name[20];
struct class *next;
}std[3],*head,*p,*q;
int i;
char a[20];
for(i=0;i<3;i++)
{
printf("please input num:");
scanf("%d",&std.num);
printf("please input name:");
scanf("%s",std.name);
if(i!=2)
std.next=&std[i+1];
else
std.next=NULL;
}
head=&std[0];
p=&std[0];
q=&std[0];
printf("please input delete of name:");
scanf("%s",a);
while(a!=p->num && p->next!=NULL)
{
q=p;
p=p->next;
if(a==p->num)
{
if(p=head)
head=p->next;
else
q->next=p->next;
}
}
while(p!=NULL)
{
printf("num=%d name=%s\n",p->num,p->name);
p=p->next;
}
return 0;
} |
|