【18年扬大真题】创建并打印一个单链表。要求生成线性表时,从键盘读取元素,用链式存储结构(单链表)实现存储。单链表数据元素限定为非“0”元素,单链表长度不限,数据元素的输入以“0”为结束标志。
int main() {
LinkList L=(LNode*)malloc(sizeof(LNode));
LNode* p = L;//用p标记链尾
p->next = NULL;
printf("请输入要生成的链表元素,以0为链表结束标志:");
while (1) {
LNode* s = (LNode*)malloc(sizeof(LNode));
scanf("%d", &s->data);
if (s->data == 0) {
break;
}
s->next = p->next;
p->next = s;
p = s;
}
LNode* tmp = L->next;//用tmp遍历L
while (tmp) {
printf("%d ", tmp->data);
tmp = tmp->next;
}
}