#include<stdio.h>
#include<stdlib.h>
#define null 0
//--------定义节点---------
typedef struct List
{
int data;
struct List* next;
}List;
//----------构造链表----------
List* InitList(int n)
{
int i;
List *head,*p,*q;
head=(List*)malloc(sizeof(List)); //构造头结点
if(!head) exit(0);//判断是否成功分配内存
q=head;
head->data=0; //记录链表长度
head->next=null;
for(i=0;i<n;i++) //构造链表
{
p=(List*)malloc(sizeof(List));
if(!p) exit(0);
/*-----头插----------
p->next=head->next;
head->next=p;
*///-----------------
//--尾插--
p->next=q->next;
q->next=p;
q=p;
head->data++; //长度自增
printf("输入数据第%d个数据:\n",head->data);
scanf("%d",&(p->data));
}
return head;
}
///----------主函数--------------
void main()
{
int length; //记录长度
List *head1;
head1=InitList(3); //构造长度为7的链表
}
C语言链表
最新推荐文章于 2025-05-26 19:21:32 发布