只是实现了链表ADT的部分功能。
/*---编写打印出一个单链表的所有元素的程序---*/
#include <stdio.h>
#include <stdlib.h>
struct Node{
int val;
struct Node *next;
};
Node *findEnd(Node *list){
while(list->next) list = list->next;
return list;
}
void insert(int val, Node *list){
Node *p = (Node *)malloc(sizeof(Node));
p->val = val; p->next = NULL;
Node *end = findEnd(list);
end->next = p;
}
int main(){
Node *list = (Node *)malloc(sizeof(Node)), *p;
list->next = NULL;
int a;
while(scanf("%d", &a) == 1)
insert(a, list);
p = list->next;
while(p){
printf("%d ", p->val);
p = p->next;
}
return 0;
}
版权声明:本文为u012846486原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。