C语言链表实验报告.doc_第1页
C语言链表实验报告.doc_第2页
C语言链表实验报告.doc_第3页
C语言链表实验报告.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

链表实验报告1、 实验名称 链表操作的实现-学生信息库的构建二、实验目的(1)理解单链表的存储结构及基本操作的定义(2)掌握单链表存储基本操作(3)学会设计实验数据验证程序【实验仪器及环境】计算机 Window XP操作系统三、实验内容1、建立一个学生成绩信息(学号,姓名,成绩)的单链表,按学号排序2、对链表进行插入、删除、遍历、修改操作。3、对链表进行读取(读文件)、存储(写文件)四、实验要求(1)给出终结报告(包括设计过程,程序)-打印版(2)对程序进行答辩五、实验过程、详细内容1、概念及过程中需要调用的函数(1)链表的概念结点定义结构的递归定义struct stud_node int num; char name20; int score; struct stud_node *next; (2)链表的建立1、手动输入struct stud_node*Create_Stu_Doc()struct stud_node *head,*p;int num,score;char name20;int size=sizeof(struct stud_node);【链表建立流程图】2、 从文件中直接获取先建立一个【链表建立流程图】(3)链表的遍历ptrptrptr=ptr-nextptr-numptr-score(4)插入结点headptrss-next = ptr-nextptr-next = s先连后断(5) 删除结点ptr2=ptr1-nextptr1-next=ptr2-nextfree(ptr2)(6)动态储存分配函数malloc()void *malloc(unsigned size) 在内存的动态存储区中分配一连续空间,其长度为size若申请成功,则返回一个指向所分配内存空间的起始地址的指针若申请不成功,则返回NULL(值为0)返回值类型:(void *)通用指针的一个重要用途将malloc的返回值转换到特定指针类型,赋给一个指针 (7)动态储存释放函数free()当某个动态分配的存储块不再用时,要及时将它释放void free(void *ptr) 释放由动态存储分配函数申请到的整块内存空间,ptr为指向要释放空间的首地址。(8) 链表写入文件(9)链表的读取六、实验总结链表弥补了许多数组的缺点,例如, 1、数组在添加新元素时,如果添加的位置是数组的首部或者数组中间,那么我们必须设计算法移动相关元素,并且涉及到许多相关元素; 2、删除元素时,如果删除的不是尾部元素,同样会移动其他元素。因此使用数组处理大量元素时,会影响程序

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论