C语言-----链表1(代码附注释)
来源:互联网 发布:ubuntu启动搜狗输入法 编辑:程序博客网 时间:2024/04/27 14:42
构造一个链表,记录电影名字,评价(0~10分的评分),将链表中的内容依次输出.
代码:
#include <stdio.h>#include <stdlib.h> //调用malloc()函数 free()函数#include <string.h> //调用gets()函数,getchar()函数#define TSIZE 45//链表创建 值域+指针域struct film{ char title[TSIZE]; //电影标题int rating; //评价0~10struct film * next;};int main(){ struct film *head = NULL; //定义一个头指针,指向个空指针不然容易成为野指针struct film *prev,*current; //定义指针变量char input[TSIZE]; puts("输入电影名: ");while( gets(input) != NULL && input[0] != '0' ) //gets()函数返回的是一个指针{ current = (struct film *)malloc(sizeof(struct film)); //包含头文件stdlib.h if(head == NULL) head = current;//头指针为空时,指向当前指针 else prev -> next = current; // prev = current 注意结合33行代码理解 current -> next = NULL; //当前链表的指针域指向空 strcpy(current -> title,input); //地址操作 puts("输入你的电影评价 <0~10>: "); scanf("%d",¤t -> rating); // while(getchar() != '\n') continue; puts("输入下一个电影名 (空格结束): "); prev = current;} //构造单链表if(head == NULL) printf("没有数据输入.");else printf("电影名: \n"); current = head;//头指针不为空时,指针变量current指向头指针while(current != NULL){ printf("电影名: %s 评价: %d\n",current -> title,current -> rating);current = current -> next; //当前链表的指针指向current变量指向下一个链表}//释放构造的链表的空间current = head;while(current != NULL){ free(current);current = current -> next; //链表传递依次释放指针}printf("Bye!\n");return 0;}初学链表要搞清楚变量的赋值的意义,每个步骤的意思要理解清楚.
1 0
- C语言-----链表1(代码附注释)
- 【C语言】C代码注释转换
- 奥利奥聊天机器人1.0【原创】【源码附注释】【C语言】
- C语言简单示例(代码注释)
- C语言编程规范--代码注释
- C 语言状态机编程-去掉代码注释
- c语言实现去除代码中的注释
- C语言基础之常用文件操作1(附代码)
- The Secant Method(正割法、弦截法) 附C语言代码
- 七大查找算法(附C语言代码实现)
- C语言基础之字符串(附测试代码)
- C语言基础之宏定义(附代码)
- C语言做的接鸡蛋小游戏(附源码注释)【原创】
- uboot中C语言代码入口函数(start_armboot)的注释
- uboot中C语言代码入口函数(start_armboot)的注释
- C语言实现代码注释的自动删除
- uboot中C语言代码入口函数(start_armboot)的注释
- C语言基础(一)编译、数据类型、注释、代码块
- 搭建ss
- jQuery链式调用理解
- Android6.0以后,在BroadcastReceiver中启动AlertDialog导致程序停止运行的问题及解决办法
- android 内容提供者查询单个使用URI匹配器
- 定时器之contextDestroyed
- C语言-----链表1(代码附注释)
- 职工管理项目文件操作z
- 为什么要使用 Docker?
- JavaScript——AJAX基础
- linux使用总结
- 定时器之timer.schedule()方法详解
- Oracle通过Excel创建表
- 无限重启
- 定时器之Timer和TimerTask深入分析