线性表操作实验报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

忻州师范学院计算机科学与技术系

实验报告

(第六组)

组长:梁启超

组员:晋丹丹张艳华

马军刘雪梅

孙钰林刘涛

分块调试:把算法分拆成几个功能模块,按C程序结构标准分模块调试;

3)错误跟踪有两种方法:错误信息排查法、执行路线跟踪法。

错误信息排查法:根据错误信息进行分类排查,要求分析者对C的错误代码要有足够的了解和认识,有经验的程序员多用此法。

执行路线跟踪法:变量分析法(跟踪变量的值)、插入标签法(插入输出标签),这种方法适合初学者。

4)调试分析不宜面面俱到,具体写出关键问题就行。

分析如下:

主函数main()首先调用显示操作菜单函数scan(),再根据用户输入的数字选项分别调用以下函数:

(1)createlist_l头插法构造单链表;

(2)createlist_l2尾插法构造单链表;两种二选一;

(2)listinsert_l向单链表中插入元素;

(3)listdelete_l删除单链表中的元素;

(4)printlist_l遍历单链表;

(5)getelem_l按位序查找单链表;

(6)locateElem_l按值查找单链表;

由上述结构可知,采用分功能模块调试的方法较合理,即主要功能按以下顺序实现:添加——查找——删除——遍历。

5.使用说明与测试结果

程序名为TXL.exe,运行环境为DOS。程序执行后显示(下图为参考截图例子。)

第一次操作需选择1或者2,并且只能选择一种。程序执行显示

我们选择的的是头插法构造单链表,输入1后显示要输入几个数1我们写5个请输入要插入的数据:我们插入15 25 35 45 55

遍历单链表

删除表中第2个元素

在第3个元素中插入68

按位序查找单链表;查找第4个元素

五、实验总结(调试和运行程序过程中产生的问题及采取的措施;对算法的程序的讨论、分析,改进设想以及其它经验教训;对实验方式、组织、设备、题目的意见和建议等)

附源程序清单:#include

#include

typedef struct lnode{

int data;

struct lnode *next;

}lnode,*linklist;

linklist createlist_l(int n)

{

int i;

linklist l,p;

l=(linklist)malloc(sizeof(lnode));

l->next=NULL;

printf("please input the data of :");

for(i=n;i>0;--i)

{

p=(linklist)malloc(sizeof(lnode));

scanf("%d",&p->data);

p->next=l->next;l->next=p;

}

return l;

}

linklist createlist_l2(int n)

{

int i;

linklist l,p,r;

l=(linklist)malloc(sizeof(lnode));

l->next=NULL;r=l;

printf("please input the data of:");

for(i=1;i<=n;i++)

相关文档
最新文档