c语言-单链表(一)
定义节点:
typedef struct Node { int data; Node* pNext; }NODE, *PNODE;
细节说明,PNode 就代表struct Node* ,上面的表单是也可以写成如下形式,含义是一样的
typedef struct Node { int data; Node* pNext; }*PNODE,NODE ;
算法操作
1. 创建链表
//1.初始化链表 PNODE create_list(void) { int len,val; printf("%s", "请输入你要生成链表的长度\n"); scanf("%d", &len); PNODE pHead = (PNODE)malloc(sizeof(PNODE));//创建一个头结点 PNODE pTail = pHead;//永远指向最后一个 pTail->pNext = NULL; for (int i = 0; i < len; i++) { printf("请输入第%d个变量的数值 ", i); scanf("%d", &val); PNODE p = (PNODE)malloc(sizeof(PNODE)); if (NULL == p) { printf("分配内存失败"); } p->data = val; p->pNext = NULL; pTail->pNext = p;//尾节点指向挂在Ptail上 pTail = p;//pTail 就是尾节点了 } return pHead; }
2. 显示链表数据
//2.输出 void show_list(PNODE pHead) { PNODE p = pHead->pNext;//第一个节点地址 while (p != NULL) { printf("%d\n", p->data); p = p->pNext; } printf("\n"); return; }
3. 运行测试
int main() { PNODE pHead = NULL;//代表 Struct Node* pHead=NULL; pHead = create_list();// show_list(pHead); return 0; }
相关推荐
alicelmx 2020-06-16
学习 2020-05-31
Cypress 2020-03-01
niushao 2020-01-19
xhao 2019-12-15
DemoQiao 2019-04-23
weiwolves 2018-09-10
mingyunxiaohai 2018-09-19
夏乐宾 2017-06-01
zhangxiafll 2012-02-02
kunfeifeifei 2018-04-12
广西信息安全学会 2018-12-19
thousfeet 2015-07-20
飞空静渡 2009-11-25
小金屋 2019-04-16
phptyong 2016-07-04
phpcrazy 2016-07-05
PHP100 2019-03-28