苏嵌学习日志7月24日
2018-07-24 20:52
134 查看
学习日志 姓名:石圆圆 日期:2018年7月24日
|
|
今日学习任务 |
嵌入式C语言开发实战 |
今日任务完成情况 |
基本完成任务。 |
今日开发中出现的问题汇总 |
枚举,数据结构等‘}’后要记得加‘;’ |
今日未解决问题 |
无 |
今日开发收获 |
②定义头指针; ③初始化指针; ④插入新节点。 |
自我评价 |
还需要课后巩固练习,增强记忆。 |
其他 |
无 |
[code]#include <stdio.h> #include <stdlib.h> enum RESULT { NO = -1, SUCCESE, FAIL, DELATE_SUCCESE, DELATE_FAIL, RESERVE_SUCCESE, RESERVE_FAIL }; struct node { int num; struct node *next; }; typedef struct node Node; typedef Node * Link; void creat_link(Link *head) { *head = NULL; } void insert_head_node(Link newnode,Link *head) { if(newnode != NULL) { newnode->next = *head; *head = newnode; } else { newnode->next == NULL; *head = newnode; } } int insert_mid_node(Link newnode,Link *head,int num) { if(*head == NULL) { return NO; } Link temp = *head; while(temp != NULL) { if(temp->num == num) { newnode->next = temp->next; temp->next = newnode; return SUCCESE; } temp = temp->next; } return FAIL; } void insert_tail_node(Link newnode,Link *head) { if(*head == NULL) { newnode->next = NULL; *head = newnode; } else { Link temp = *head; while(temp->next != NULL) { temp = temp->next; } temp->next = newnode; newnode->next = NULL; } } int delate_node(Link *head,int num) { if(*head == NULL) { return NO; } Link temp = *head; if((*head)->num == num) { (*head) = (*head)->next; free(temp); temp = NULL; return DELATE_SUCCESE; } else { Link p = temp; temp = temp->next; while(temp != NULL) { if(temp->num == num) { p->next = temp->next; free(temp); temp = NULL; return DELATE_SUCCESE; } p = temp; temp = temp->next; } } return DELATE_FAIL; } int reserve_link(Link *head) { if(*head == NULL||(*head)->next == NULL) { return RESERVE_FAIL; } Link p = *head; Link s = p->next; Link t = s->next; while(t != NULL) { s->next = p; p = s; s = t; t = t->next; } s->next = p; (*head)->next = NULL; *head = s; return RESERVE_SUCCESE; } void display_link(Link *head) { Link temp = *head; while(temp != NULL) { printf("%d\n",temp->num); temp = temp->next; } } int main() { int i; Link head; Link newnode; creat_link(&head); for(i = 0;i < 10;i++) { newnode = (Link)malloc(sizeof(Node)); newnode->num = i + 1; // insert_head_node(newnode,&head); //insert_mid_node(newnode,&head,6); insert_tail_node(newnode,&head); } display_link(&head); delate_node(&head,3); reserve_link(&head); /* newnode = (Link)malloc(sizeof(Node)); newnode->num = 11; insert_mid_node(newnode,&head,5); */ display_link(&head); return 0; }
阅读更多
相关文章推荐
- (非原创)java学习(四) 日志操作 --同样是给自己挖坑
- 学习日志---本地javaApi连接集群hdfs
- 数据库学习--mysql开启慢查询日志
- linux shell编程学习--日志工具
- Leetcode算法学习日志-748 Shortest Completing Word
- XCode4.2学习日志 2013.4.15
- ZooKeeper学习之配置【6】日志配置
- Github Mybatis深入学习之日志
- Tomcat学习--禁止tomcat日志中stderr和stdout日志打印
- linux学习笔记——日志分析管理同步、修改时间、同步时间
- 【WEBSERVICE】---AXIS学习日志[一]
- phonegap学习日志01
- linux学习:tail命令--监控日志
- 关于学习数据结构的日志
- Java日志学习一:Log4j和commons-logging的关系
- 黑马程序员 java基础 继承thread多线程学习日志
- Mysql DBA 高级运维学习笔记-Mysql数据库中的日志文件
- MySQl Study学习之--MySQl二进制日志管理
- 黑马程序员——黑马学习日志之八 异常
- 学习日志2018.1.5