日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

C 语言 链表的创建与打印

發布時間:2025/4/5 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C 语言 链表的创建与打印 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

C 語言 鏈表的創建與打印

/* 包含的頭文件 */#include <stdio.h>#include <stdlib.h>/* 定義一個表示鏈表的結構體指針 */struct list {int id; /* 標識這個元素方便查找 */char data[20]; /* 鏈表中包含的元素 */struct list *next; /* 指向下一個鏈表的指針 */};/* 定義一個鏈表頭部 */static struct list *list_head = NULL;/* 為了保證每一個鏈表元素的id不同,特意把id定義成一個全局靜態變量 */static int list_id = 0;/** 將指定元素插入到聊表尾部* head : 表示要插入元素的鏈表的頭部的地址* list : 表示要插入到鏈表中的元素*/static void list_add(struct list **head, struct list *list){struct list *temp;/* 判斷鏈表是否為空 */if(NULL == *head){/* 為空 */*head = list;(*head)->next = NULL;}else{/* 不為空 */temp = *head;while(temp){if(NULL == temp->next){temp->next = list;list->next = NULL;}temp = temp->next;}}}/** 遍歷一個鏈表,打印鏈表中每個元素所包含的數據* head : 表示要遍歷的鏈表的頭部的指針*/static void list_print(struct list **head){ struct list *temp;temp = *head;printf("list information :\n");while(temp){printf("\tlist %d : %s\n", temp->id, temp->data);temp = temp->next;}}/* 主函數,程序的入口 */int main(int argc, char *argv[]){int i = 0;struct list *lists = NULL;/* 分配10個元素 */lists = malloc(sizeof(struct list) * 10);if(NULL == lists){printf("malloc error!\n");return -1;}/* 將分配的10個元素依次填充數據并加入到鏈表當中 */for(i = 0; i < 10; i++){lists[i].id = list_id++;sprintf(lists[i].data, "TECH-PRO - %d", i);list_add(&list_head, &lists[i]);}/* 遍歷鏈表,把鏈表中每個元素的信息都打印出來 */list_print(&list_head);return 0;}

posted on 2018-07-29 20:59 luoganttcc 閱讀(...) 評論(...) 編輯 收藏

總結

以上是生活随笔為你收集整理的C 语言 链表的创建与打印的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。