软基上机报告-链表(基础题)(共5页).doc

上传人:飞****2 文档编号:7253299 上传时间:2022-02-22 格式:DOC 页数:5 大小:21KB
返回 下载 相关 举报
软基上机报告-链表(基础题)(共5页).doc_第1页
第1页 / 共5页
软基上机报告-链表(基础题)(共5页).doc_第2页
第2页 / 共5页
点击查看更多>>
资源描述

《软基上机报告-链表(基础题)(共5页).doc》由会员分享,可在线阅读,更多相关《软基上机报告-链表(基础题)(共5页).doc(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上ex2_1基本题1)首先创建一个单链表:从键盘读入五个整数,按输入顺序形成单链表。将创建好的链表元素依次输出到屏幕上。2)在已创建好的链表中插入一个元素:从键盘读入元素值和插入位置,调用插入函数完成插入操作。然后将链表元素依次输出到屏幕上。3)在已创建好的链表中删除一个元素:从键盘读入欲删除的元素位置(序号),调用删除函数完成删除操作。然后将链表元素依次输出到屏幕上。1、 程序流程说明1)创建一个单链表:从键盘读入五个整数,按输入顺序形成单链表。将创建好的链表元素依次输出到屏幕上。2)在已创建好的链表中插入一个元素:从键盘读入元素值和插入位置,调用插入函数完成插入操作

2、。然后将链表元素依次输出到屏幕上。(让插入位前一位的指针指向新增结点,新增结点指针指向插入位置原结点,同时length加一)3)在已创建好的链表中删除一个元素:从键盘读入欲删除的元素位置(序号),调用删除函数完成删除操作。然后将链表元素依次输出到屏幕上。(让插入位置前一结点指针指向下一结点,length减一,其余不变)二、程序代码#include#include#includetypedef struct Nodeint data;struct Node *link;node;typedef struct Listnode *head;node *tail;int length;list;vo

3、id creat_list(list *table)int x,i;node *temp;table-head=NULL;table-tail=NULL;for(i=5;i=1;i-)printf(请输入第%d个元素:,i);fflush(stdin);scanf(%d,&x);printf(n);temp=(node*)malloc(sizeof(node);temp-data=x;temp-link=NULL;temp-link=table-head;table-head=temp;table-length=5;node * create_node(int new_node)node *

4、temp;temp = (node*)malloc(sizeof(node);temp-data = new_node;temp-link = NULL;return temp;void get(list *table)int loc,x,i;node *temp;node *newnode;temp=table-head;printf(n请输入插入位置:);scanf(%d,&loc);printf(请输入插入元素:);scanf(%d,&x);if(loctable-length|loclength+;newnode=create_node(x);if(loc=3&loc=5)for(i=

5、2;ilink;newnode-link = temp-link; temp-link = newnode;if(loc=1)newnode-link=table-head;table-head=newnode;if(loc=2)temp=table-head;newnode-link = temp-link; temp-link = newnode;void show_list(list *table)int x,i;node *temp;printf(链表为:n);temp=table-head;for(i=1;i length;i+)x=temp-data;printf(%d ,x);t

6、emp=temp-link;void delete_node(list *table)int loc,i;node *temp,*t;temp=table-head;printf(n请输入删除位置);scanf(%d,&loc);if(loctable-length)printf(删除出错);else table-length-;if(loc=1)temp=temp-link;table-head=temp;if(loc2&loclength)temp=table-head;for(i=2;ilink;t=temp-link;temp-link=t-link; if(loc=table-len

7、gth)for(i=2;ilink; temp-link=NULL;if(loc=2)temp=table-head;t=temp-link;temp-link=t-link;void main()list table;creat_list(&table);show_list(&table);get(&table);show_list(&table);delete_node(&table);show_list(&table);三、测试数据* 输入:请输入第5个元素:23请输入第4个元素:6请输入第3个元素:1请输入第2个元素:0请输入第1个元素:45请输入插入位置:3请输入插入元素:12请输入

8、删除位置1 应输出(上机前自己分析的结果):链表为:45 0 1 6 23链表为:45 0 12 1 6 23链表为:0 12 1 6 23 四、上机时遇到的问题(可分为编译问题和逻辑问题)*问题现象: 运行超出范围 原因:i,j值选取出现问题; 解决办法:通过改变循环的值来实现正确解问题现象: 增加元素之后仍然只能输出五位值 原因:show_list函数输出五位,而非length位; 解决办法:改变show_list函数五、实际运行结果: 链表为:45 0 1 6 23链表为:45 0 12 1 6 23链表为:0 12 1 6 23 六 、小结 体会*:可以改变一下让输入不只五位,同时可以考虑实现增加或删除多个元素。专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 教育教学

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁