c语言创建链表存储10个数,C语言编写的建立单向int链表,连续输入10个结点创建链表,并实现在原链表中插入数字、删除数字、查找数字的功能...
滿(mǎn)意答案
1bz8z1f96
2014.07.01
采納率:54%????等級(jí):9
已幫助:565人
#include
#include
#define LEN sizeof(struct num)
struct num
{
int n;
long num;
struct num *next;
};
int n;
struct num * creat(void)
{
struct num *head;
struct num *p1,*p2;
n=0;
p1=p2=(struct num *)malloc(LEN);
scanf("%d %ld",&p1->n,&p1->num);
while(p1->num!=0)
{
n=n+1;
if(n==1)
head=p1;
else
p2->next=p1;
p2=p1;
p1=(struct num *)malloc(LEN);
scanf("%d %ld",&p1->n,&p1->num);
}
p2->next=NULL;
return(head);
}
void print(struct num *head)
{
struct num *p;
printf("At present,the %d records are:\n",n);
p=head;
if(head!=NULL)
do
{
printf("%d %ld\n",p->n,p->num);
p=p->next;
}while(p!=NULL);
}
struct num * insert(struct num *head,struct num *addnum)
{
struct num *p0,*p1,*p2;
p1=head;
p0=addnum;
while((p0->num>p1->num)&&(p1->next!=NULL))
{
p2=p1;
p1=p1->next;
}
if(p0->num<=p1->num)
{
if(head==p1)
head=p0;
else
p2->next=p0;
p0->next=p1;
}
else
{
p1->next=p0;
p0->next=NULL;
}
n=n+1;
return head;
}
struct num *del(struct num *head,long num)
{
struct num *p1,*p2;
p1=head;
while(num!=p1->num&&p1->next!=NULL)
{
p2=p1;
p1=p1->next;
}
if(num==p1->num)
{
if(p1==head)
head=p1->next;
else
p2->next=p1->next;
printf("delet:%ld\n",num);
n=n-1;
}
else
printf("\n%ld not been found.\n",num);
return (head);
}
01分享舉報(bào)
總結(jié)
以上是生活随笔為你收集整理的c语言创建链表存储10个数,C语言编写的建立单向int链表,连续输入10个结点创建链表,并实现在原链表中插入数字、删除数字、查找数字的功能...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 智联招聘如何联系人工在线客服
- 下一篇: QQ被冻结怎么解冻