主题:怎么写这个程序
源山茗茶
[专家分:0] 发布于 2010-10-20 15:52:00
怎么写这段程序:
链表是有序的,现在删除数据x,若x不存在,输出一段提示信息。
(有头结点和无头结点两种情况)
回复列表 (共1个回复)
沙发
fluxaysss [专家分:0] 发布于 2010-12-17 20:38:00
type struct linknode
{ char data;
struct link *next
}
linnode;
linnode *head;
int n; //定义n为线链表长度
void DelList(char x) //删除结点元素
{
node *p,*q; //定义结点指针p和q
if (head==NULL)
{
printf("\t\t链表不存在!\n");
return; //返回
}
if (head->next==NULL)
{
printf("\t\t链表已经为空! \n");
return;
}
q=head;
p=head->next;
while(p!=NULL&&p->data!=x)
{
q=p;
p=p->next;
}
if(p!=NULL)
{
q->next=p->next;
delete p;
n--;
printf("\t\t %c已经删除!",x);
}
else
printf("\t\t未找到数据x! \n");
}
我来回复