数据结构线性表的链式表示和实现的实习报告

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

数学与计算科学学院实验报告
实验项目名称线性表的链式表示与实现
所属课程名称数据结构
实验类型验证型
实验日期
班级
学号
姓名
成绩
2.调试第一次显示错误如下:
原因:由于没有头文件及宏定义以及自定义,因此导致许多错误,可能还有许多错误没有显示
3. 将以下语句编入VC++6.0中
#include "stdio.h"
#include "stdlib.h"
#define OK 1
#define ERROR 0
typedef int ElemType;
typedef int Status;
4.调试第二次显示错误如下:
原因:由于算法中许多变量没有定义,因此有许多错误5. 将以下语句加入算法中:
int i;
LinkList p;(加入创建链表的算法中)
LinkList p;
int j;(加入查找元素的算法中)
LinkList p,s;
int j;(加入插入元素的算法中)
LinkList p,q;
int j;(加入删除元素的算法中)
6.调试第三次显示没有错误:
7. 现在开始编写主函数:
(1)先编写调用创建链表的函数的主函数:
如下:
void main()
{
LinkList L;
int i,n;
scanf("%d",&n);
CreateList_L(L,n);
for(i=n;i>0;--i)
printf("%d ",L->data);
printf("\n");
}
调试显示为:
运行显示为:
产生了随机数说明for循环语句那里编写错误因此修改为:
LinkList p;
for(p=L->next;p!=NULL;p=p->next)
printf("%d ",p->data);
调试显示为:
运行显示为:
这次正确了那么继续编写下面的其他主函数,形成的总的主函数为:void main()
{
LinkList L,p;
int i,n;
scanf("%d",&n);
CreateList_L(L,n);
for(p=L->next;p!=NULL;p=p->next)
printf("%d ",p->data);
printf("\n");
ElemType e;
scanf("%d", &i);
GetElem_L(L, i, e);
printf("%d\n",e);
scanf("%d",&i);
scanf("%d",&e);
ListInsert_L(L, i, e);
for(p=L->next;p!=NULL;p=p->next)
printf("%d ",p->data);
printf("\n");
scanf("%d", &i);
ListDelete_L(L,i,e);
printf("%d\n",e);
for(p=L->next;p!=NULL;p=p->next)
printf("%d ",p->data);
printf("\n");
}
8.调试第四次显示为:
9.运行显示结果为:
10. 但运行后的界面显得很单调;要是忘记下一个算法是什么就容易输入出错,也不适合大众使用;因此为了将程序优化,所以在主函数中增加以下输入输出语句和条件语句;为了让程序更加严谨,因此还加入一些循环语句以及条件语句,那么主函数语句变为:
main()
{
LinkList L,p;
int i,n,x,y,z;
ElemType e;
printf("请输入您想构建的链式表的元素个数:\n");
scanf("%d",&n);
printf("请输入您想构建的链式表:\n");
CreateList_L(L,n);
printf("您构建的链式表是:\n");
for(p=L->next;p!=NULL;p=p->next)
printf("%d ",p->data);
printf("\n");
printf("请输入您想查找的元素是第几个元素:\n");
scanf("%d", &i);
for(x=2;(i<=0||i>n)&&x>=0;--x)
{
switch(x)
{
case 2:printf("输入的数字错误,还有两次重新输入符合要求的数字的机会:\n");break;
case 1:printf("输入的数字错误,还有一次重新输入符合要求的数字的机会:\n");break;
case 0:printf("输入的数字错误,您的输入机会已经用完\n");return ERROR;
printf("%d ",p->data);
printf("\n");
return 0;
}
11.调试第五次显示为:、
12.运行后结果显示为:
这样那么程序就完整了,清晰明了,用户运行的时候也易知道自己要输入什么了
【实验结论】(结果)。

相关文档
最新文档