软件技术基础实验指导书(1)
最新UML程序设计实验指导书

《UML程序设计》实验指导教程课程与实验综述第一部分实验综述一.课程简介及实践要求:《UML程序设计》是以介绍面向对象的统一建模语言UML为主,使学生了解面向对象技术的基本概念,掌握UML的分析和设计方法,同时掌握在Enterprise Architect环境下用UML进行分析和设计的技术。
本课程在教学内容方面着重基本理论、基本知识和基本方法,在培养实践能力方面着重设计构思和设计技能的基本训练,熟练的上机操作能力和分析能力。
实验实践训练是UML程序设计教学的重要技能环节。
通过实验,使学生加深理解、验证、巩固课堂教学内容,特别是通过设计和综合实验,发挥学生的想象力和创新能力。
二.课程实验目的要求:通过UML的实验,学生应该:1.学会用UML进行面向对象的思想去分析和设计相关系统;2.学会用Rose建模工具进行软件建模。
三.课程实验参考资料1.(美)Joseph Schmuller著.UML基础、案例与应用.人民邮电出版社,20042.(美)Hans-Erik Eriksson.UML 2工具箱. 电子工业出版社,20043.吴际,金茂忠.UML面向对象分析.北京航空航天大学出版社,20024.赵从军.UML设计及应用.机械工业出版社,20045.Grady Booch,James Rumbaugh,Ivar Jacobson.UML用户指南.机械工业出版社,20016.吴建,郑潮,汪杰.UML基础与Rose建模案例.人民邮电出版社,2004第二部分实验实践指导实验一构建用例图一、实验目的1.学会分析系统中的参与者和用例2.掌握用例图的绘制方法二、实验器材1. 计算机一台;2. Enterprise Architect 工具软件;三、实验内容1、分析ATM系统需求,按要求画出用例图;2、建立一个学生管理信息系统的需求3、建立设计一个学生管理信息系统的完整的用例图四、实验步骤(一)ATM系统的用例图1.分析ATM自动取款机:客户可以取钱,存钱,查询余额,转帐,修改密码。
《因纳特市场营销模拟平台软件》实验指导书

《因纳特市场营销模拟平台》实验指导书(软件版本号:V4.01版)深圳市因纳特科技有限公司目录实验一 4P营销技能运用(实验产品:传真机) (5)一、实验简介 (5)二、实验目的 (5)三、实验安排 (5)四、实验准备 (6)五、知识点准备 (8)第一:系统设计整体思路 (8)第二:4P相关知识点介绍 (9)第三:系统操作流程 (14)六、学生操作 (19)第一步、产品策略 (19)产品策略表—产品生产记录表 (21)第二步、促销、宣传策略 (22)宣传策略表—品牌知名度表/宣传效果汇总表 (23)市场份额汇总表 (24)第三步、价格策略 (25)第四步、渠道策略 (25)合作渠道汇总表 (26)七、讨论 (27)实验二产品销售模式的组合训练(产品:手机) (28)一、实验简介 (28)二、实验目的 (28)三、实验时间安排 (28)四、实验准备 (29)五、知识点准备 (29)第一、销售模式讲解 (29)目标渠道调查记录表 (32)渠道销售利润统计表 (34)投标销售利润汇总表 (37)自由交易利润计算表格 (39)第二、销售模式的比较分析 (40)六、学生操作 (41)七、讨论 (42)实验三资本收益最大化训练(产品:电话机) (43)一、实验简介 (43)二、实验目的 (43)三、实验安排 (43)四、实验准备 (44)五、知识点准备 (44)第一、品牌知名度 (44)第二、市场份额 (45)第三、产品研发 (45)六、学生操作 (45)第一步、公司注册 (45)第二步、了解产品需求量 (46)市场需求预测表 (47)第三步、获得订单 (48)渠道价格分析表 (50)品牌知名度分析对比表 (52)销售利润统计表 (54)资本收益率计算表 (56)七、讨论 (57)实验四:战略性营销分析与应用(产品:电风扇) (58)一、实验简介 (58)二、实验目的 (58)三、实验安排 (59)四、实验准备 (59)五、知识点准备 (59)六、学生操作 (60)第一步、公司注册 (60)第二步、战略分析 (61)调查结果记录表 (62)竞争对手调查表 (65)第三步、产品销售 (66)渠道标书要求统计表 (67)资金分配表 (68)第四步、分析利润率 (69)利润率计算表 (69)七、讨论 (70)实验五:综合考试(产品:大米) (71)一、考试简介 (71)二、考试准备 (71)三、考试规则 (72)四、实验结束后老师工作 (73)实验一 4P营销技能运用(实验产品:传真机)一、实验简介4P理论是市场营销的重要理论基础,本实验学生主要运作内容是4P相关知识,让学生先从最简单的4P理论着手,熟练掌握4P理论在实践中的运用。
Oracle10g数据库实验指导书

Oracle10g数据库实验指导书前言ORACLE数据库是属于数据库开发软件及应用领域的专业课,是面向计算机专业本科生开设的一门数据库应用普及型计算机专业课程。
ORACLE数据库是当前应用最为广泛的数据库系统,ORACLE数据库是针对高年级学生的实践性较强的课程。
通过实训,并结合典型系统进行分析,使学生较为系统地掌握ORACLE数据库的基本开发方法,运用数据库设计理论设计出满足一定规范的ORACLE 数据库应用系统。
随着计算机数据库技术的迅速发展和在当今信息社会中的广泛应用,给《ORACLE数据库》课程的教学提出了新的更高的要求。
由于ORACLE数据库是一门实践性较强的技术,课堂教学应该与实践环节紧密结合。
实验要求通过理论学习,能够在ORACLE这个大型的数据库设计实践中,对ORACLE的基本功能有一个初步的了解:通过对SQL*PLUS的简单使用,掌握其基本操作命令和技术;通过PL/SQL编程语言的使用与程序设计的分析,加深学生对SQL*PLUS和PL/SQL技术的理解和掌握,进而为今后再涉及到难度较大的实际应用打下扎实的基础。
总之,通过上述实验环节,使学生加深了解和更好地掌握《ORACLE10g数据库》课程教学大纲要求的内容。
在课程实训过程中,要求学生做到:(1)预习实验指导书有关部分,认真做好实训内容的准备,就实验可能出现的情况提前做出思考和分析。
(2)仔细观察上机操作时出现的各种现象,记录主要情况,作出必要说明和分析。
(3)认真书写实验报告。
实验报告包括实验目的和要求,实验情况及其分析。
对需编程的实验,写出程序设计说明,给出源程序框图和清单。
(4)遵守机房纪律,服从辅导教师指挥,爱护实验设备。
(5)实验课程不迟到。
目录实践1 Oracle10g的安装与配置及常用工具的使用 (1)实践2 创建数据库、表空间和数据文件 (25)实践3 数据库的安全管理 (27)实践4 管理表结构与表数据 (32)实践5 管理索引、视图、同义词和序列 (36)实践6 PL/SQL编程基础 (38)实践7 PL/SQL高级编程 (42)综合实践一Oracle基本知识与SQL*PLUS简单使用 (46)综合实践二PL/SQL编程语言的使用与程序设计 (57)综合实践三(设计性) JSP+Oracle网上购物系统 (68)附录:员工医疗保险系统表 (69)实践1 Oracle10g的安装与配置及常用工具的使用开发语言及实现平台或实验环境Oracle 10g实践目的(1) 掌握Oracle 10g数据库的安装与配置过程。
仿真软件操作实验报告(3篇)

第1篇实验名称:仿真软件操作实验实验目的:1. 熟悉仿真软件的基本操作和界面布局。
2. 掌握仿真软件的基本功能,如建模、仿真、分析等。
3. 学会使用仿真软件解决实际问题。
实验时间:2023年X月X日实验地点:计算机实验室实验器材:1. 仿真软件:XXX2. 计算机一台3. 实验指导书实验内容:一、仿真软件基本操作1. 打开软件,熟悉界面布局。
2. 学习软件菜单栏、工具栏、状态栏等各个部分的功能。
3. 掌握文件操作,如新建、打开、保存、关闭等。
4. 熟悉软件的基本参数设置。
二、建模操作1. 学习如何创建仿真模型,包括实体、连接器、传感器等。
2. 掌握模型的修改、删除、复制等操作。
3. 学会使用软件提供的建模工具,如拉伸、旋转、镜像等。
三、仿真操作1. 设置仿真参数,如时间、步长、迭代次数等。
2. 学习如何进行仿真,包括启动、暂停、继续、终止等操作。
3. 观察仿真结果,包括数据、曲线、图表等。
四、分析操作1. 学习如何对仿真结果进行分析,包括数据统计、曲线拟合、图表绘制等。
2. 掌握仿真软件提供的分析工具,如方差分析、回归分析等。
3. 将仿真结果与实际数据或理论进行对比,验证仿真模型的准确性。
实验步骤:1. 打开仿真软件,创建一个新项目。
2. 在建模界面,根据实验需求创建仿真模型。
3. 设置仿真参数,启动仿真。
4. 观察仿真结果,进行数据分析。
5. 将仿真结果与实际数据或理论进行对比,验证仿真模型的准确性。
6. 完成实验报告。
实验结果与分析:1. 通过本次实验,掌握了仿真软件的基本操作,包括建模、仿真、分析等。
2. 在建模过程中,学会了创建实体、连接器、传感器等,并能够进行模型的修改、删除、复制等操作。
3. 在仿真过程中,成功设置了仿真参数,启动了仿真,并观察到了仿真结果。
4. 在分析过程中,运用了仿真软件提供的分析工具,对仿真结果进行了数据分析,并与实际数据或理论进行了对比,验证了仿真模型的准确性。
组态王实验教程全版

行搜索、添加、备份、恢复以及实现数据词典的导入和导出等功能。 z 工程浏览器:工程浏览器是一个工程开发设计工具,用于创建监控画面、监控
的设备及相关变量、动画链接、命令语言以及设定运行系统配置等的系统组态 工具。 z 运行系统:工程运行界面,从采集设备中获得通讯数据,并依据工程浏览器的 动画设计显示动态画面,实现人与控制设备的交互操作。 3、组态王与 I/O 设备 组态王软件作为一个开放型的通用工业监控软件,支持与国内外常见的 PLC、 智能模块、智能仪表、变频器、数据采集板卡等(如:西门子 PLC、莫迪康 PLC、 欧姆龙 PLC、三菱 PLC、研华模块等等)通过常规通讯接口(如串口方式、USB 接 口方式、以太网、总线、GPRS 等)进行数据通讯。 组态王软件与 IO 设备进行通讯一般是通过调用*.dll 动态库来实现的,不同的 设备、协议对应不同的动态库。工程开发人员无须关心复杂的动态库代码及设备通 讯协议,只须使用组态王提供的设备定义向导,即可定义工程中使用的 I/O 设备, 并通过变量的定义实现与 I/O 设备的关联,对用户来说既简单又方便。 4、组态王的开放性 组态王支持通过 OPC、DDE 等标准传输机制和其他监控软件(如:Intouch、 Ifix、Wincc 等)或其他应用程序(如:VB、VC 等)进行本机或者网络上的数据 交互。 5、建立应用工程的一般过程
(2)配置主画面:在工程浏览器中,单击快捷键工具栏上“运行”按钮,出现 “运行系统设置”对话框,如图 2-21 所示。单击“主画面配置”选项卡,选中制作 的图形画面名称“整数累加”画面,无需再进行画面选择。
组态王软件是一种通用的工业监控软件,它融过程控制设计、现场操作以及工 厂资源管理于一体,将一个企业内部的各种生产系统和应用以及信息交流汇集在一 起,实现最优化管理。它基于 Microsoft Windows XP/NT/2000 操作系统,用户可以 在企业网络的所有层次的各个位置上都可以及时获得系统的实时信息。采用组态王 软件开发工业监控工程,可以极大地增强用户生产控制能力、提高工厂的生产力和 效率、提高产品的质量、减少成本及原材料的消耗。它适用于从单一设备的生产运 营管理和故障诊断,到网络结构分布式大型集中监控管理系统的开发。
软件工具与应用实验指导书

软件工具与应用实验指导书一、实验平台VisualC++是Microsoft公司为开发Windows应用程序而创建的一种新的编程工具,它是生产效率最高的C++工具,用于创建性能最高的Windows应用程序和Web程序。
儿乎所有的世界级软件,从领先的Web浏览器到以任务为主的应用程序,都是用MiCrOSOflViSUaIC++开发系统创建的。
ViSUalC++6.0给C++带来了高水准的生产效率,并具有使用灵活、性能强大和控制简单等优点。
它的高性能及高度集成的开发环境,可使用户比从前更方便、快捷地创建、修改和调试WindOWS应用程序,而无需手工编制程序语句。
VisualC++6.0与以前的版本相比有了多方面的改进。
它的编译器、调试器、连接器、编辑器、资源编辑器都有所加强,在编辑器中还提供了自动语句生成功能,编辑器会像VisualBasic一样自动提示函数的参数、对象的成员。
另夕卜,VisualC++6.0还提供了很多向导。
MFC提供了一些新的类,提供了更强大的数据访问功能。
用户可利用ViSUalC++6.0以两种方式编写Win32应用程序,一种方式是基于WindowsAPI的编程方式,另一种是基于MFC的编程方式。
二、实习目的和要求软件工具与应用是一门实际技术课程,有很强的实践性。
通过实验教学环节,对学生进行实践技能和科学研究方法的训练,巩固其在课堂上所学书本知识,加深印象、熟练掌握。
实验中,一是理解使用ViSUalC++进行面向对象与可视化程序设计的基本原理和方法;二是掌握使用API函数进行可视化编程、使用MFC进行可视化编程和VisualC++高级编程的技能;三是锻炼对前后章节知识的综合运用的能力,逐步全面掌握面向对象与可视化编程技术,为实际的软件开发打下基础。
三、实验实验一:ViSlIaIC++基础及开发环境实验目的:让学生熟悉VisualC++开发环境。
实验内容和要求:通过上机实习熟悉ViSUalC++开发环境及其各个成分的使用方法:菜单、工具栏、项目工作区窗口、文档窗口、输出窗口。
软件工程》实践教学大纲(3篇)

第1篇一、课程简介《软件工程》是一门研究软件开发原理、方法和工具的学科,旨在培养学生具备软件开发的基本理论、实践技能和工程素养。
本课程通过实践教学,使学生能够掌握软件工程的基本方法,提高软件开发能力,为后续课程学习和实际工作打下坚实基础。
二、教学目标1. 理解软件工程的基本概念、原理和方法。
2. 掌握软件开发过程中的需求分析、设计、编码、测试和维护等基本技能。
3. 具备使用常用软件开发工具进行实际项目开发的能力。
4. 培养良好的团队协作和沟通能力,提高工程素养。
三、教学内容1. 软件工程概述- 软件工程的定义和发展历程- 软件生命周期和开发模型- 软件工程的目标和原则2. 需求分析- 需求获取和分析方法- 需求规格说明和文档编写- 需求管理3. 软件设计- 设计原则和模式- 数据库设计- 系统架构设计4. 软件开发- 编码规范和最佳实践- 集成开发环境(IDE)的使用- 版本控制工具的使用5. 软件测试- 测试方法和技术- 测试用例设计- 软件测试管理6. 软件维护- 维护过程和方法- 软件配置管理- 软件质量保证7. 软件项目管理- 项目管理的基本概念和原理- 项目计划、执行和监控- 团队协作和沟通四、实践教学安排1. 实践教学课时:共40学时,其中理论课24学时,实践课16学时。
2. 实践教学环节:(1)课堂演示:讲解软件工程的基本概念、原理和方法,演示常用软件开发工具的使用。
(2)案例分析与讨论:分析实际软件项目案例,讨论软件工程在实际开发中的应用。
(3)上机实验:完成以下实验项目:1. 需求分析实验:完成一个简单软件的需求分析,编写需求规格说明书。
2. 设计实验:完成一个简单软件的设计,包括数据库设计、系统架构设计等。
3. 编码实验:使用一种编程语言实现一个简单软件的功能。
4. 测试实验:编写测试用例,对软件进行功能测试和性能测试。
5. 维护实验:对已完成的软件进行维护,修复已知问题和优化性能。
《因纳特网络营销技能实训软件》实验指导书

1《因纳特网络营销技能实训软件》实验指导书深圳市因纳特科技有限公司目录实验一、软件讲解 (4)一、实验课时 (4)二、实验目标 (4)三、讲解内容 (4)实验二、网站管理 (8)一、实验简介 (8)二、实验课时 (8)三、知识点讲解 (8)四、实验过程 (9)实验三、网站优化 (13)一、实验课时 (14)二、实验简介 (14)三、知识点讲解 (14)四、实验过程 (19)五、讨论 (22)实验四、网站推广 (23)一、实验课时 (23)二、实验简介 (23)三、知识点讲解 (23)四、实验过程 (27)Page 2五、讨论 (27)实验五、数据分析 (28)一、实验课时 (28)二、实验简介 (28)三、知识点讲解 (28)四、实验过程 (32)五、讨论 (33)Page 3实验一、软件讲解一、实验课时2课时二、实验目标通过老师对软件的整体讲解,了解并熟悉软件的操作过程以及规则。
理解每个模块之间的关系。
为后期实际操作奠定基础。
三、讲解内容《因纳特网络营销技能实训软件》以网站运营为背景,学生首先建立自己的网站,通过网站管理、网站优化、网络推广、数据分析以及知识查看五个方面,让学生在实际操作中,学习当下流行的网络营销技术,五个部分构成整体的网络营销实训环境,每个环节数据紧密相连并相互影响,使整个实训过程紧凑有序。
通过对以上五个部分的实训,学生能全面的体验网络营销各项技能在实际中的真实应用,体验网站优化、网络维护和数据分析之间的关系,给学生一个完整而连贯的实训过程,从而达到网络营销实训教学的效果。
下图是各模块的关系示意图:Page 4《因纳特网络营销技能实训软件》关系示意图功能模块1、网络营销知识库:提供丰富的网络营销知识和网络营销案例,学生随时能查看相关知识内容,有利于老师课堂教学,将理论知识系统化,同时,老师可在后台管理知识库内容,进行添加修改等操作。
2、网站优化:软件提供SEO优化和可用性优化两种方式,训练学生网站优化的技能,达到提供网站流量的效果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件技术基础实验指导书2014年9月1日目录实验一斐波那契数列的实现算法及分析 (3)实验二顺序表的实现与应用 (5)实验三链表的实现和应用 (7)实验四栈的实现和应用 (9)实验五队列 (11)实验六二叉树的创建和遍历 (12)实验七图 (15)实验八哈夫曼树及哈夫曼编码 (16)实验九查找算法的实现 (19)实验十内部排序算法的实现 (26)实验十一迷宫问题 (29)实验十二 B+树程序设计 (30)实验十三四叉树程序设计 (31)实验十四修路方案问题 (32)实验一斐波那契数列的实现算法及分析实验目的:1.掌握分别用递归和非递归方法计算斐波那契(Fibonacci)数列。
2.掌握算法性能测试的方法,并能进行算法分析和比较。
实验环境(硬/软件要求):Windows 2000, VisualC++ 6.0实验内容:二阶Fibonacci数列的定义如下:F0=1,F1=1, F2=2,F3=3,F4=5,。
,Fi=F(i-1)=F(i-2) (i>=1).试用递归法和非递归法两种方法写出计算Fn的函数。
实验要求:1.完成计算Fn的递归函数Fib-rec.2.完成计算Fn的非递归数列Fib-ite.3.当n=10,15,20,25,30,35,40,45时测试以上两种算法执行的时间,并把测试结果填写在附表1-1中。
附表1-1 测试表注:表格中填写的是测试时间,单位μm.4.试解释两种算法在执行时间上的不同,并对两种算法进行算法分析。
【C语言源程序】#include <stdio.h>#include <time.h>Long Fib-rec(int n){if(n==0||n==1)return(1);else return(Fib-rec(n-1) + Fib-rec(n-2) );}long Fib-ite(int n){long fib1,fib2,fib;int i;fib1=1;fib2=1;for (i=3;i<=n,i + + ){fib=fib1+fib2;fib1=fib2;fib2=fib;}return fib;}void main ( ){clock-t us1, us2;int n;printf(“请输入n:\n”);scanf(“%d,&n);us1=clock( );printf(“递归函数计算结果:%1d\n”,Fib-rec(n) ); us2=clock( );printf(“递归函数执行时间%1d毫秒\n”,us2-us1);us1=clock( );printf(“非递归函数计算结果:%1d\n”,Fib-ite(n) ); us2=clock( );printf(非递归函数执行时间%1d毫秒\n”,us2-us1);}实验二顺序表的实现与应用实验目的:1.掌握线性表的概念。
2.熟练掌握线性表的顺序存储结构。
3.熟练掌握线性表在顺序存储结构上的运算。
4.了解测试的思想。
实验环境(硬/软件要求):Windows 2000,Visual C++6.0实验内容:1.编写算法实现顺序表中元素的逆置。
要求按用户输入的数据建立一个顺序表。
在逆置的过程中使用最少的辅助存储单元。
测试数据为:10,9,8,7,6,5,4,3,2,1。
2.编写算法,在非递减有序的顺序表中,插入一个给定的元素,插入后该顺序表仍然递增有序。
有序表中的数据为:12,16,24,33,45,66,68,89;需要进行测试的插入数据分别是:9,13,25,33,88,91实验要求:1.完成顺序表的结构定义。
2.完成顺序表的就地逆置函数和主函数。
3.完成在非递减有序表中的插入数据的函数和主函数。
【C语言源程序】#include <stdio.h>#define maxsize 1024typedef int datatype;/*datatype可为任何类型,这里假设为int*//*线性表可能的最大长度,这里假设为1024*/typedef struct{ datatype data[maxsize];Int length;} sequenlist;void setNull(sequenlist *L) /*顺序表的就地逆置*/{ L->length=0; }void reverse(sequenlist *L){ int i,j;datatype t;for(i=0,j=L->length-1;i<j;i++,j--){ t=L->data[i];L->data[i]=L->data[j];L->data[j]=t; }}void insert(sequenlist *L,int x) /*x插入到递增有序的顺序表L中*/{ int i,k;i=0;while((i<=L->length-1)&&(x>=L->data[i])) i++;/*找正确的插入位置*/for(k=L->length-1;k>=i;k- -) L->data[k+1]=L->data[k];/*元素从后往前依次后移*/L->data[i]=x;/*x插入到正确的位置*/L->length ++;}void main( ){ sequenlist L1,L2;int i,x;datatype data;/*测试顺序表的逆置函数*/setNull(&L1);printf(“请输入逆置顺序表的初始数据,以-1表示结束\n”);scanf(“%d”,&data);while(data!= -1){ L1.data[L1.length]=data;L1.length ++;scanf(“%d”,&data);}reverse(&L1);printf(“逆置后的顺序表如下\n”);for(i=0;i<=L1.length-1;i++) printf(“%d”,L1.data[i]);printf(“\n”);/*测试有序表的插入函数*/setNull(&L2);printf(“请输入非递减有序顺序表的初始数据,以-1表示结束\n”); scanf(“%d”,&data);while(data!=-1){ L2.data[L2.length]=data;L2.length ++;scanf(“%d”,&data);}printf(“请输入要插入的数据\n”);scanf(“%d”,&x);insert(&L2,x);printf(“逆置后的顺序表如下\n”);for(i=0;i<=L2.length-1;i ++)printf(“%d”,L2.data[i] );printf(“\n”);}实验三链表的实现和应用实验目的:1.掌握链表的概念。
2.熟练掌握线性表的链式存储结构。
3.熟练掌握线性表在链式存储结构上的运算。
实验环境(硬/软件要求):1.编写算法,根据用户输入的字符数据用尾插入法创建一个带头结构的单链表,“#”作为数据输入的结束符。
测试数据共有4组,分别是:1、“#”;2.“a#”;3.“ab#”;4.“abcd#”。
2.编写算法,实现在带有头结点的单链表中按序号查找的函数。
假设单链表中包含6个数据元素,测试数据是:1.查找第0个;2。
查找第1个;3.查找第2个;4.查找第6个;5.查找第7个。
实验要求:1.完成链表存储结构的类型设计。
2.完成链表带头结点尾插入法函数。
3.完成按序号查找函数。
4.编写主函数完成实验内容的要求。
【C语言源程序】#include<stdio.h>#include<stdlib.h>typedef char datatypetypedef struct node{ datatype data;struct node *next;}linklist;linklist *createlist( ) /*尾插入法建立带头结点的单链表,返回表头指针*/{ char ch;linklist *head,* s,* r;head=(linklist*)malloc(sizeof(linklist)); /*生成头结点head*/r=head;printf(“请输入字符产生的链接表,以#结束\n”); /*尾指针指向头结点*/ch=getchar();while(ch!= ‘#’) /*为输入结束符*/{ s=(linklist*)malloc(sizeof(linklist));/*生成新结点*s*/s->data=ch;r-=next=s; /*新结点插入表尾*/r=s; /*尾指针r指向新的表尾*/ch=getchar( ); /*读入下一个结点的值*/}r->next=NULL;return head; /*返回表头指针*/} /*createlist*//*在带头结点的单链表head中查找第i个结点,若找到,则返回该结点的存储位置;否则返回NULL*/linklist *get(linklist *head ,int i){ int j;linklist *p;p=head;j=0; /*从头结点开始扫描*/while ((p->next!=NULL)&&(j<i)){ p=p->next; /*扫描下一个结点*/j++;}if(i==j) return p; /*找到第i个结点*/else return NULL; /*找不到,i<=0或i>n*/} /*GET*/void main ( ){linklist *head,*r;int num;head=createlist( );printf(“链表信息为:”)r=head->next;while(r){printf(“%c”,r->data);r=r->next;}printf(“\n”);printf(“请输入要查询的序号:\n”);scanf(“%d”,&num);r=get(head,num);if(r==NULL)printf(“没有查到\n”);printf(“查找的结果为:%c\n,r->data”);}【运行测试】请输入字符所产生的链表,以#结束abcdefg#链表信息为:abcdefg请输入要查的序号:3查找的结果为:c实验四栈的实现和应用实验目的:1.掌握栈的定义。
2.掌握栈基本操作的实现,并能用于解决实际问题。