实验一 线性表的基础训练(2次上机).docVIP

  • 6
  • 0
  • 约1.28千字
  • 约 2页
  • 2017-08-17 发布于河南
  • 举报

实验一 线性表的基础训练(2次上机).doc

实验一 线性表的基础训练(2次上机) 【上机时间】 第1次 2007年9月17日(星期一)晚上18:30~21:30 第2次 2007年10月8日(星期一)晚上18:30~21:30 【上机地点】 信息学院大楼一楼西边 信息学院机房 联系老师:刘桂英,3607462 【实验目的】 熟悉掌握本门课程所使用的程序设计语言(C语言)体会算法与程序之间的区别: /输出、参数传递; 熟练使用C中的动态分配与释放函数(malloc, realloc, free); 熟悉带参数的main函数的编写与运行; 类C的引用参数在C中的变换处理; 利用输入导向,从文件中获取输入数据。 初步理解线性表的顺序存储和链式存储特性,掌握在不同存储结构、不同约定下,其基本操作的实现方法与差异。体会以下几点(注意你所做的约定): 静态分配的顺序表及增量式分配的顺序表在表示与实现上的差别,各有何特点; 有头结点的链表与无头结点链表在操作实现上的区别; 头插法与尾插法的操作方法及应用效果对比; 插入、删除操作在顺序存储和链式存储上的差别; 非循环单链表、循环单链表各适用于解决哪些问题,它们在数据类型定义、操作的定义及实现上各有什么区别? 静态链表与动态链表之间的映射与差别(自选)。 【实验要求】 下载Gzip的相关资源,用VC为Gzip建立project,编译运行Gzip;给出3种以上的命令行输入,单步跟踪Gzip对命令行参数的处理; 目的:开展程序理解的第一阶段。 下载ch2.rar其中c1.h是第1章预设的一些宏和类型名, c2-1.h是顺序表的类型定义,c2-2.h是链表的类型定义,bo2-1.c是ADT List中基本操作的顺序表实现, bo2-2.c是ADT List中基本操作的链表实现,algo2-1.c是例2-1的顺序表实现,algo2-12.c是例2-1的链表实现,algo2-12a.c是改写algo2-12.c的Union()函数。 命令行格式: 〈可执行程序名〉〈人数n〉〈初始的报数上限m〉〈密码1〉 …… 〈密码n〉 ·第1个参数是你所编写的程序的可执行文件名, ·第2个参数是指定形成约瑟夫环的人数n ·第3个参数是指定初始的报数上限m ·后面n个参数是n个人所持有的整数密码。 当除可执行程序名外,没有参数时,将继续执行程序并提示用户输入这些参数。 基本要求: 1)假设命令行参数是齐全的且是正确的,运行所编写的程序能正确地输出结果; 2)能将输出结果导到文件中。 实验提示: 该实验的处理可分以下几个模块: 1)命令行参数的处理; 2)单循环链表的创建; 3)根据m和起始报数人对应在单循环链表中的位置,确定出列人的位置; 4)删除出列人对应的结点。 选作要求: 1)程序有对命令行参数不全或不正确的处理(如提示输入、报错等); 2)将约瑟夫环用顺序表实现。 撰写实验报告。 【检查期限】 上机内容检查时间:第2次和第3次上机时,以第3次上机为截止时间; 报告上交截止时间:10月11日(星期四)上午上课前截止。 1

文档评论(0)

1亿VIP精品文档

相关文档