|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
#include <stdlib.h>
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
typedef int Status; /* Status是函数的类型,其值是函数结果状态代码,如OK等 */
typedef int ElemType; /* ElemType类型根据实际情况而定,这里假设为int */
struct Node {
int Data; /* 存储结点数据 */
struct Node *Next; /* 指向下一个结点的指针,如果typedef struct Node *PtrToNode在前面,则这里也可以写成'List Next' */
};
typedef struct Node *List;// List是指向Node的结构体指针 。struct Node * == List。 这相当于定义了单链表类型。
//单链表和顺序存储结构的不同之处就在于,单链表用了结构体指针。顺序存储结构只是定义了结构体SqList,SqList是结构体类型,并不是结构体指针。
/*以上是单链表的定义*/
void output(List L)
{
List p;
p=L->Next;
while(p->Next)
{
printf(p->Data);
p=p->Next;
}
printf(" ");
}
int main() {
int N, i,e;
List L, p;
scanf("%d", &N);
L = NULL;
for ( i=0; i<N; i++ ) {
p = (List)malloc(sizeof(struct Node));
scanf("%d", &p->Data);
p->Next = L; L = p;//这里定义的单链表是这样的:每次输入一个节点p数据,然后接到单链表L的头上。 所以你相当于是倒着输入的。
}
output(L);
return 0;
}
|
|