- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一:单链表上机实验报告
学生班级:1506班 姓名:王伟伟 学号:1550610604
实验日期:2015年10月22日
实验目的:A.在单链表中,怎么实现“插入”和“删除”的操作。
B.两个有序单链表合并成一个有序单链表的算法。
实验内容:编程实现建立一个单链表,并在此表中插入一个元素和删除一个元素。
1.通过键盘读取元素建立线性表
2.指定一个元素,再次元素之前插入一个新元素
3.指定一个元素,删除此元素
实验步骤及分析:
题目1:
#include stdio.h
#include stdlib.h
#define OK 1
#define ERROR 0
typedef int ElemType;
typedef int Status;
typedef struct Lnode {
ElemType data;
struct Lnode *next;
}Lnode,*LinkList;
//请输入以下建立单链表算法
void Creatlist_L(LinkList head)
{ LinkList tail,p;
int n,i;
p=(Lnode *)malloc(sizeof(Lnode));
head=tail=p;
head-next=NULL;
printf(Please input length to creat a list:\n);
scanf(%d,n);
printf(Please input a group of values of the list:\n);
for(i=1;i=n;i++){
p=(Lnode *)malloc(sizeof(Lnode));
scanf(%d,p-data);
p-next=NULL;
tail-next=p;
tail=p;
}
printf(A list has been created successfully!\n);
}
//以下是输出单链表
void OutputList_L(LinkList L)
{
LinkList p = L-next;
if(p==NULL)
{
printf(\n No list\n);
return;
}
printf(The list is:\n);
while (p)
{
printf(%4d,p-data);
p = p-next;
}
printf(\n);
}
//在第i个元素之前插入一个元素
Status ListInsert_L(LinkList L, int i, ElemType e)
{
LinkList p,s;
int j=0;
p=L;
//请在此填写代码,将该算法补充完整,参见书本P30 算法2.9
while(p ji-1)
{ p=p-next;
j++;
}
if(!p||ji-1) return ERROR;
s=(LinkList)malloc(sizeof(Lnode));
s-data=e;s-next=p-next;
p-next=s;
return OK;
}
// 删除第 i 个元素
Status ListDelete_L(LinkList L, int i, ElemType e)
{
LinkList p=L,q;
int j=0;
while(p-next ji-1)
//请在此填写代码,将该算法补充完整,参见书本P30 算法2.10
{
p=p-next;
j++;
}
if(!(p-next)||ji-1) return ERROR;
q=p-next;p-next=q-next;
e=q-data;free(q);
return OK;
}
void main()
{ system(color f0);
LinkList L;
int choice,i;
ElemType e;
choice=1;
printf(We should create a list first!);
Creatlist_L(L);
OutputList_L(L);
while(choice!=0)
{
printf(\n menu \n);
printf( 1 insert a elem );
pri
您可能关注的文档
- 微波基本参数测量实验报告.doc
- 人体解剖生理学实验试卷.doc
- protel 或者 Altium designer课程设计报告最终版.doc
- 市场营销模拟实验教学大纲.doc
- 中国工业气体市场调研报告.doc
- 单片机实验报告_17.doc
- 单片机课程设计报告格式.doc
- 操作系统形成性考核实验报告作业1(已完成).doc
- 数值分析实验.doc
- 实验二、日光灯及其功率因数的提高.doc
- 2024-2030年中国冰箱行业市场深度调研及竞争格局与投资策略研究报告.docx
- 2024-2030年中国冷冻机油行业市场发展趋势与前景展望战略分析报告.docx
- 2024-2030年中国军用综合训练环境(STE)解决方案行业现状动态与发展战略研究报告.docx
- 2024-2030年中国农业卫星数据服务行业发展战略与投资规划分析报告.docx
- 2024-2030年中国再生棉纱行业市场发展趋势与前景展望战略分析报告.docx
- 2024-2030年中国再生铝行业创新状况与未来营销趋势预测研究报告.docx
- 2024-2030年中国六羰基钨行业发展动态与产销需求预测报告.docx
- 2024-2030年中国公共资源交易行业运行监测分析及发展对策建议研究报告.docx
- 2024-2030年中国全棉尿布行业需求规模及投资风险剖析研究报告.docx
- 2024-2030年中国光芯片行业供需状况与前景趋势研究研究报告.docx
文档评论(0)