最近在刷题重温C语言的基础知识。关于单链表的创建还有一些不懂,参考了网上的代码,做一下笔记。
1、单链表的创建与赋值
#include <stdio.h>
#include <stdlib.h>
struct node
{
int data;
struct node* next;
};
int main()
{
//创建一个单链表并输出数值
struct node* head, * p, * q, * t;
int i, n, a;
scanf("%d", &n);
head = NULL;
for (i = 0; i < n; i++) {
p = (struct node*)malloc(sizeof(struct node));
scanf("%d", &a);
p->data = a;
p->next = NULL;
if (head == NULL)
head = p;
else
q->next = p;//这里的q相当于用于遍历链表的临时指针
q = p;
}
//输出链表
t = head;
while (t !=<