




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据结构实验准备性实验 VC+面向对象数据结构编程基础目的:熟悉VC+6.0编程环境,熟悉面向对象的编程基本方法,掌握数据结构的一般编程习惯。步骤:1)打开VC+6.0桌面或开始/程序菜单中找“”标志,双击打开。2)新建工程菜单文件/新建,打开“新建”对话框,自动打开的是工程标签,如下图。选择“Win32 Console Application”,在“位置”下选择自己用于存储实验的文件夹(不要放在C盘上),在“工程名称”下为自己的工程取名,一般要见名知义,最好按变量名的要求取工程名。然后点击“确定”,出现下图。点击“一个空工程”,直接点击“完成”按钮。然后是“日志”画面,直接点击“确定”即可。3)建立编辑文件1:公用状态头文件点击菜单文件/新建,打开“新建”对话框,自动打开的是文件标签,如下图。左侧选择第三项“C/C+ Header File”,右侧会自动“添加到工程”,为文件取名“status”,不必写扩展名,系统会自动加扩展名为“.h”,点击“确定”,进入文件编辑状态,将下面代码拷贝到status.h文件中。#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define INFEASIBLE -1#define OVERFLOW -2typedef int Status;typedef char ElemType;出现下图。一定点击“”按钮,即全部存盘按钮,保存文件。4)建立编辑文件2:顺序表结构类定义头文件如第3)步,再建立一个“.h”文件,文件名为“SqList”,将下列代码拷贝到sqlist.h文件中,点击“全部存盘”按钮。#include status.h#define LIST_INIT_SIZE 100#define LISTINCREMENT 10class SqListprivate:ElemType *elem;int length;int listsize;public:Status InitList();Status DestroyList();Status ClearList();Status ListEmpty();int ListLength();Status GetElem(int i, ElemType& e);int LocateElem(ElemType e);Status PriorElem(ElemType e, ElemType& pree);Status NextElem(ElemType e, ElemType& nexe);Status ListInsert(int i, ElemType e);Status ListDelete(int i, ElemType& e);5) 建立编辑文件3:顺序表结构类实现源文件点击菜单文件/新建,打开“新建”对话框,自动打开的是文件标签,如下图。左侧选择第四项“C+ Source File”,右侧会自动“添加到工程”,为文件取名“sqlist”,不必写扩展名,系统会自动加扩展名为“.cpp”,点击“确定”,进入文件编辑状态,将下面代码拷贝到sqlist.cpp文件中。#include sqlist.h#include #include #include Status SqList:InitList()elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType);if(!elem)exit(OVERFLOW); length=0;listsize=LIST_INIT_SIZE;return OK;int SqList:ListLength()return length;Status SqList:ListInsert(int i, ElemType e) ElemType *newbase,*q,*p;if(ilength+1)return ERROR; if(length=listsize)newbase=(ElemType*)realloc(elem,(listsize+LISTINCREMENT)*sizeof(ElemType);if(!newbase)exit(OVERFLOW);elem=newbase; listsize=listsize+LISTINCREMENT; q=&(elemi-1); for(p=&(elemlength-1);p=q;p-) *(p+1)=*p; *q=e; length+; return OK;Status SqList:GetElem(int i, ElemType& e) if (ilength)return ERROR; e=elemi-1; return OK;/其它成员函数代码/.6) 建立编辑文件4:用于数据结构性能测试的主文件(源文件)如第5)步建立源文件shiyan1,将下列代码拷贝到文件中,点击“全部存盘”按钮。#include sqlist.h#include #include #include void main()int i,k; ElemType e, data10=s,a,d,f,g,h,j,k,l,p; SqList sq1; Status re; /测试初始化函数 re=sq1.InitList(); if(re=OK)cout顺序表初始化成功!endl; else cout顺序表初始化失败!endl; /输入原始数据 for(k=1;k=10;k+) sq1.ListInsert(k, datak-1);/测试求长度函数 cout顺序表长度为:sq1.ListLength()endl;/测试读取cout测试读取函数,输入i的值:i;re=sq1.GetElem(i, e);if (re=ERROR)coutERROR!endl;else cout读出数据为:eendl; /测试插入 cout测试插入函数,输入i的值:i; cout输入e的值:e; re=sq1.ListInsert(i, e); if (re=OK)cout在i位置插入数据eendl; else coutERROR!endl; /测试删除/自己加入其它测试语句/./销毁sq1.DestroyList();7)编译、链接、调试、运行点击“”工具栏中的“”按钮进行编译与链接,点击“”运行程序。如果编译、链接有错误,会在编辑区的下方有错误提示,可按错误提示对程序进行修改,修改后重新编译链接,直到没有问题时可按“”运行程序。8)关闭该工程当运行程序无误后,可关闭当前工程,进行下一个工程的编写。关闭工程用文件/关闭工作空间,如下图所示。注意事项:1)文件编辑后要按“”进行存盘,这样可以保证当前文件及工程所属的文件同时存储,不会丢失信息。2)进行“打开”与“关闭”命令时,一定要用相关的“工作空间”命令,不要单独对一个文件进行操作,因为整个工程是一个整体,各个文件协同工作,一旦出现因为单独对某个文件打开编辑,而其它附属文件没有同时打开,会出现文件信息不匹配的问题,可能导致工程无法运行。工作空间的三个相关命令在文件菜单中。例:打开刚才我们编写的工程,可以使用命令文件/打开工作空间,在我们自己刚才存储的工程文件夹中找到dsw为扩展名的文件,打开即可。3)由于版本问题,可能碰到编译或运行按钮点击后,VC+系统停止一切工作的情况,这时,要先按下“全部存盘”按钮,保证刚才编辑的信息不丢失,然后,打开windows的任务管理器,在“应用程序”标签中强行终止VC+6.0的运行,终止运行后再重新打开VC+6.0,用上面2)中示例的方法打开刚才编辑的工程,继续进行编辑、调试。总结:面向对象的数据结构编程的一般方法是:定义约定标识符(对应status.h文件),定义数据结构的类(对应.h文件),然后实现这个数据结构的类,即编写成员函数代码(对应.cpp文件),最后要编写一个主函数文件(包含main()的.cpp文件),这个文件主要用于测试成员函数的代码编写是否正确。实验思考题:1)工程文件夹下有哪些文件,它们的扩展名是什么?哪些是我们自己创建的,哪些是系统自动匹配的?2)你能在数据结构的教材中找到status.h、sqlist.h、sqlist.cpp文件代码的对应伪代码吗?写出教材中对应伪代码所在的页码。3)找到上述三个文件的代码与书中伪代码的区别,思考这些为什么会有这样的差别。相关知识学习:2.2.1 VC+6.0基本用户界面单击Windows的“开始程序Microsoft Visual Studio 6.0Microsoft Visual C+ 6.0”图标,即可以启动Visual C+工作平台。Visual C+工作平台通常被称为集成开发环境(IDE),具有包括创建源码、编辑代码、编译、连接和调试等功能。在开始写程序之前,应熟悉一下菜单、工具栏、编辑器窗口。Visual C+工作平台提供了一个多文档界面,可以同时打开多个窗口编辑不同的文件。图2-2是Visual C+6.0的用户界面,由图2-2可以看出,Visual C+用户界面包括:菜单栏、工具栏、项目工作空间、用于文件和资源编辑的主工作空间、输出窗口、状态栏等。另外,调试时,Visual C+还提供各种窗口,包括变量窗口、观察窗口、寄存器窗口、存储器窗口、调试堆栈窗口和反汇编窗口等。工作区编辑区(编译)输出区图2-2 VC+6.0基本用户界面2.2.2 菜单命令简介VC+6.0的菜单包含了程序、文本、资源等编辑、程序调试及运行、工程设置等所有命令。(1)File菜单用于打开,保存,打印文件,创建新文件,退出工作平台等,常用命令详见表2-1。表2-1 文件菜单项菜单项功 能 说 明New创建一个新文件、工程 Open打开一个已存在的文件Close关闭当前被打开的文件Open Workspace打开一个已存在的工作区Save Workspace保存当前被打开的工作区Close Workspace关闭当前被打开的工作区Save保存当前文件Save As以新的文件名保存当前文件Save All保存所有打开的文件Page Setup设置文件的页面Print打印文件的全部或选定的部分Recent Files最近的文件列表Recent Workspace最近的工作区列表Exit退出集成开发环境(2)Edit菜单用于编辑窗口的剪切、复制、粘贴、文本替换和查找,设定书签,和采用IntelliSense技术的自动完成语句功能,常用命令详见表2-2。表2-2 编辑菜单项菜单项功 能 说 明Undo撤消以前的操作Redo重复最近的操作Cut剪切Copy拷贝Paste粘贴Delete删除Select All全部选择Find查找Find in Files查找文件Replace查找替换Go To定位到代码行的某一位置Bookmarks设置代码某一书签位置AdvancedIncremental Search开始向前搜索AdvancedFormat Selection对选中对象进行快速缩排AdvancedTabify Selection在选中对象中用跳格代替空格AdvancedUntabify Selection在选中对象中用空格代替跳格AdvancedMake Selection Uppercase把选中部分改成大写AdvancedMake Selection Lowercase把选中部分改成小写Advanceda-b View Whitespace显示或隐藏空格点Breakpoints设置断点List Members成员变量Type Info类型信息Parameter Info参数信息Complete Word调入输入字体方式(3)View菜单用于激活调试时所用的各个窗口,如类库浏览,查看资源,查看工作空间、输出窗口和调试窗口等,常用命令详见表2-3。表2-3 查看菜单项菜单项功 能 说 明Class Wizard编辑应用程序中的类Resource Symbols浏览和编辑资源文件中的符号Resource Includes编辑修改资源文件名及预处理指令Full Screen切换窗口的全屏幕方式和正常方式Workspace激活Workspace窗口Output激活Output窗口Debug WindowsWatch 激活Watch窗口Debug WindowsCall Stack激活Call Stack窗口Debug WindowsMemory激活Memory窗口Debug WindowsVariables激活Variables窗口Debug WindowsRegisters激活Registers窗口Debug WindowsDisassembly激活Disassembly窗口Refresh更新选择域Properties编辑当前被选中对象的属性(4)Insert菜单主要用于项目、文件及资源的创建和添加,常用命令详见表2-4。表2-4 插入菜单项菜单项功 能 说 明New Class创建新类并加入到项目中New Form创建新表并加入到项目中Resource创建各种新资源Resource Copy对选定的资源进行拷贝File As Text在当前源文件中插入一个文件New ALT Object在项目中增加一个ALT对象(5)Project菜单用于程序的编译、链接、运行时的参数设置,插入文件和组件到工程中,常用命令详见表2-5。表2-5 工程菜单项菜单项功 能 说 明Set Active Project激活项目Add To projectNew在项目上增加新文件Add To projectNew Folder在项目上增加新文件夹Add To projectFiles在项目上插入已存在的文件Add To projectData Connection在当前项目上增加数据连接Add To projectComponents and Controls在当前项目上插入库中的组件Dependencies编辑项目组件Settings编辑项目编译及调试的设置Export Makefile以Makefile形式输出可编译项目Insert Project into Workspace将项目插入Workspace窗口中(6)Build菜单主要用来进行应用程序的编译、连接、调试和运行等,常用命令详见表2-6。表2-6 编译菜单项菜单项功 能 说 明Compile Appmodul.cpp编译C或C+源代码文件Build Ex00.exe编译和连接项目Rebuild All编译和连接项目及资源Batch Build一次编译和连接多个项目Clean删除中间及输出文件Start DebugGo开始或继续调试程序Start DebugStep Into单步运行调试Start DebugRun to Cursor运行程序到光标所在行Start DebugAttach to Process连接到正在运行的进程Debugger Remote Connection编辑远程调试连接设置Execute Ex00.exe运行程序Set Active Configuration选择激活的项目及配置Configurations编辑项目的配置Profile设置Profile选项,显示Profile数据(7)Tools菜单主要用于选择或定制集成开发环境中的一些实用工具,快速访问常用的VC工具软件,来改变窗口的显示方式,激活调试所用的各个窗口,常用命令详见表2-7。表2-7 工具菜单项菜单项功 能 说 明Source Browser在选定的对象或当前文本中查询Close Source Browser File关闭信息库Visual Component Manager激活Visual Component ManagerRegister Control激活Register ControlError Lookup激活Error LookupActiveX Control Test Container激活ActiveX Control Test ContainerOLE/COM Object Viewer激活OLE/COM Object ViewerSpy+激活Spy+MFC Tracer激活MFC TracerCustomize定制Tool菜单和工具栏Options改变集成开发环境的各项设置Macro创建和编辑宏Record Quick Macro记录宏Play Quick Macro运行宏(8)Window菜单用来排列集成开发环境中的各个窗口、打开或关闭一个窗口、使窗口分离或重组等操作,改变窗口的显示方式,激活调试所用的各个窗口等,常用命令详见表2-8。表2-8 窗口菜单项菜单项功 能 说 明New Window为当前文件打开一个新的窗口Split分割窗口Docking View启用或关闭Docking View模式Close关闭当前打开的窗口Close All关闭所有打开的窗口Next激活下一个窗口Previous激活上一个窗口Cascade多个窗口重叠出现在显示区域中Tile Horizontally把窗口按水平方向排列Tile Vertically把窗口按垂直方向排列Windows管理当前打开的窗口(9)Help菜单同大多数的Windws软件一样,Visual C+ 6.0提供了大量详细的帮助信息,这些信息都可以在Help菜单得到。Help菜单用于启动联机帮助,访问网络上相关帮助,常用命令详见表2-9。表2-9 帮助菜单项菜单项功 能 说 明Contents显示所有帮助信息的内容列表Search利用在线查询获得帮助信息Index显示在线文件的索引Use Extension Help开启或关闭Extension HelpKeyboard Map显示所有的键盘命令Tip of the Day显示Tip of the Day对话框Technical Support显示Developer Studio的支持信息Microsoft on th WebFree Stuff打开Developer Studio97 Free Stuff页Microsoft on th WebProduct News打开Developer Studio97产品消息页Microsoft on th WebFrequently Aske
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 课件比较大小
- 物业智能系统培训
- 小红书培训计划
- 创建健康村培训
- 课件模板人物速写简单
- 小学语文荔枝课件大纲
- 初中防欺凌课件大纲
- 创建无烟家庭课件
- 课件朗读者模式
- 课件最大窗口快捷键设置
- 基于多方法融合构建麻醉专科护士核心能力评价指标体系的探索与实践
- 中建八局如何做好转型升级下的技术标编制工作
- 二年级上册体育与健康课教案
- 2025年铁路货装值班员(高级)职业技能鉴定参考试题库(含答案)
- 转让叉车协议书模板
- 2025-2030中国纳米气泡发生器行业市场发展趋势与前景展望战略研究报告
- (高清版)DB11∕T2279-2024社会单位消防安全评估规范
- 语文-云南省师范大学附属中学2025届高三下学期开学考试试题和答案
- 北京一年级数学试卷
- 低压电工(特种作业)取证近年考试真题(300题)
- 养老院老人衣物洗涤保养制度
评论
0/150
提交评论