访问单链表

windows vc++6.0下通过
访问并打印之前输入的单链表数据。头插法

#include<stdio.h>
////////////////////////////////////////定义/////////////////////////////////////////////////////////////////////////////
typedef struct link//定义一个结构体,里面只有一个int数据 *next用来存放下一个节点的地址
{

int data;
struct link *next;

}LINK;

//////////////////////////////////////////访问单链表////////////////////////////////////////////////////

void print_link(struct link *head)
{
struct link *q;
q=head->next;
if(!q)
printf("linklist is null\n");
else 
{
    do
    {
    printf("%5d",q->data);
    q=q->next;
    }while(q);



    }

}



//////////////////////////////////////单链表的建立//////////////////////////////////////////////////
//////////////////////////////////////////头插法////////////////////////////////////////////////////
struct link *creat_link()
{
int a;
struct link *h,*new;
h=(LINK*)malloc(sizeof(LINK));//搞一个头节点
scanf("%d",&a);//输入一个int变量a
while(a!=-1)
{
new=(LINK*)malloc(sizeof(LINK));
new->data=a;//把变量a的数据输入new的data中,类似new.data=data
new->next=h->next;//把新的数据的下一个地址改成头节点里存放的地址,这样新数据就在整个链表头部了。
h->next=new;//把新的节点的地址给头节点的存放地址区,这样才能在表头插入下一个数据。
scanf("%d",&a);//在开始写数据
}

return h;



}

void main()
{


struct link *head;//先创立一个头节点
head=creat_link();
print_link(head);
}

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值