首先第一個頭文件,定義結構體類型
typedef struct LNode
{int data;struct LNode* next;
}LNode,*LinkList;
//可能作為第一次寫c語言的小伙伴看不懂這一段typedef是如何定義的
//基本的解釋如下所示
//typedef struct LNode LNode;
//typedef struct LNode* LinkList; //定義指針指向頭結點
其次是源文件
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
#include"LinkList.h"LinkList createList(int n)
{LinkList L, p, q;int i;L = (LNode*)malloc(sizeof(LNode));//定義一個頭結點if (!L)//防止頭結點未定義成功return 0;L->next = NULL;q = L;for (i = 0; i < n; i++){p = (LNode*)malloc(sizeof(LNode));printf("請輸入第%d個元素的值:", i+1);scanf("%d", &(p->data));p->next = NULL;q->next = p;q = p;}return L;
}bool PrintLinkList(LinkList L)
{int i = 0;if (!L)//如果頭指針L指向的是空值,則直接結束return false;LinkList p = L->next;while (p){printf("鏈表中第%d個數為%d\n", i + 1, p->data);p = p->next;}return true;
}int main()
{LinkList head = NULL;//初始化LinkList指針指向NULLint n;//用于定義輸入幾個數據printf("請輸入你需要輸入幾個數據\n");scanf("%d", &n);head = createList(n);PrintLinkList(head);return 0;
}