设计模式上机实验二实验报告
上机实验报告(精选11篇)

上机实验报告篇1用户名se××××学号姓名学院①实验名称:②实验目的:③算法描述(可用文字描述,也可用流程图):④源代码:(.c的文件)⑤用户屏幕(即程序运行时出现在机器上的画面):2.对c文件的要求:程序应具有以下特点:a可读性:有注释。
b交互性:有输入提示。
c结构化程序设计风格:分层缩进、隔行书写。
3.上交时间:12月26日下午1点-6点,工程设计中心三楼教学组。
请注意:过时不候哟!四、实验报告内容0.顺序表的插入。
1.顺序表的删除。
2.带头结点的单链表的\'插入。
3.带头结点的单链表的删除。
注意:1.每个人只需在实验报告中完成上述4个项目中的一个,具体安排为:将自己的序号对4求余,得到的数即为应完成的项目的序号。
例如:序号为85的同学,85%4=1,即在实验报告中应完成顺序表的删除。
2.实验报告中的源代码应是通过编译链接即可运行的。
3.提交到个人空间中的内容应是上机实验中的全部内容。
上机实验报告篇2一、《软件技术基础》上机实验内容1.顺序表的建立、插入、删除。
2.带头结点的单链表的建立(用尾插法)、插入、删除。
二、提交到个人10m硬盘空间的内容及截止时间1.分别建立二个文件夹,取名为顺序表和单链表。
2.在这二个文件夹中,分别存放上述二个实验的相关文件。
每个文件夹中应有三个文件(.c文件、.obj文件和.exe文件)。
3. 截止时间:12月28日(18周周日)晚上关机时为止,届时服务器将关闭。
三、实验报告要求及上交时间(用a4纸打印)1.格式:《计算机软件技术基础》上机实验报告用户名se××××学号姓名学院①实验名称:②实验目的:③算法描述(可用文字描述,也可用流程图):④源代码:(.c的文件)⑤用户屏幕(即程序运行时出现在机器上的画面):2.对c文件的要求:程序应具有以下特点:a 可读性:有注释。
b 交互性:有输入提示。
上海电机学院实验二自主设计实验

void main(){ SeqList A,B,C;printf("\n生成多项式A(x):\n");create_list(&A);printf("\nA(x)=");show_list(A);printf("\n生成多项式B(x):\n");create_list(&B);printf("\nB(x)=");show_list(B);printf("\n多项式A(x)和B(x)的和");add_List (A,B,&C);printf("C(x)=");show_list(C);}二、运行结果。
输入A(x)最高次数6,再输入系数8,5,-10,0,32,-1,10,再输入B(x)最高次数5,再输入7,10,-20,-10,1,0,然后得到两个多项式的和C(x)结果如图1所示。
如图1(二)链式多项式求和一、源程序代码:#include<stdio.h>#include<malloc.h>#include<math.h>typedef struct linknode{float coef;图24、结果分析与实验体会对于本次的设计实验,我有意识的将两个程序放在一起是为了进行对比出相应的差别。
可以经过对比发现,链式储存结构的设计相对于顺序结构较为复杂,但是在程序的健壮性方面,链式结构是占优势的,因为逻辑性强,需要同学们具有坚实的C语言基础,对待一般同学来说编程会有一定的困难。
在今后的日子里我会更加加强语言的汇编,复习。
化工设计课程上机报告二

《化工设计》上机报告二姓名何景豪班级化工13-01班学号06132473 指导教师赵云鹏模拟任务:一离心泵输送流量为100 m3/hr 的水,水的压强为0.15 MPa,温度为25 C。
泵的特性曲线如下:流量(m3/hr)70.0 90.0 109.0 120.0扬程(m)59.0 54.2 47.8 43.0效率(%)64.5 69.0 69.0 66.0求:泵的出口压力、提供给流体的功率、泵所需要的轴功率各是多少?(物性方法采用PENG-ROB)模拟步骤:启动Aspen Plus,选择模块General with Metric Units,文件保存为hgsjbg2.apw。
建立流程图如下图所示,其中pump选用的模块库中pressure changers|pump|icon1模块。
点击下一步,出现Components|Specifications|Selection页面,输入组分水,如下图所示:点击下一步,进入Properties|Specifications|Global页面,选择物性方法peng-rob,如下图所示:点击下一步,出现Required Properties Input Complete对话框,点击OK,进入Steams|FEED|Input|Specifications页面,输入FEED:100 cum/hr的水(25℃,0.15MPa),如下图所示:点击下一步,进入Blocks|pump|setup|specifications页面,设置模块参数,如下图所示:点击下一步,进入Blocks|pump|performance curves|curve setup页面,设置泵特性曲线参数,如下图所示:点击下一步,进入Blocks|pump|performance curves|curvedata页面,输入泵特性曲线数据,如下图所示:点击下一步,进入Blocks|pump|performance curves|efficiencies页面,设置泵特性曲线参数,如下图所示:点击下一步,出现Required Input Complete对话框,点击确定,运行模拟结果如下图所示:模拟结果:泵的出口压力为0.6465MPa泵提供给流体的功率为13.85kW泵所需的轴功率为20.07kW。
设计模式实验报告总结(3篇)

第1篇一、实验背景随着软件工程的不断发展,设计模式作为一种解决软件开发中常见问题的有效方法,越来越受到广泛关注。
本次实验旨在通过学习设计模式,提高编程能力,掌握解决实际问题的方法,并加深对设计模式的理解。
二、实验目的1. 理解设计模式的基本概念和分类;2. 掌握常见设计模式的原理和应用;3. 提高编程能力,学会运用设计模式解决实际问题;4. 培养团队协作精神,提高项目开发效率。
三、实验内容本次实验主要涉及以下设计模式:1. 创建型模式:单例模式、工厂模式、抽象工厂模式、建造者模式;2. 结构型模式:适配器模式、装饰者模式、桥接模式、组合模式、外观模式;3. 行为型模式:策略模式、模板方法模式、观察者模式、责任链模式、命令模式。
四、实验过程1. 阅读相关资料,了解设计模式的基本概念和分类;2. 分析每种设计模式的原理和应用场景;3. 编写代码实现常见设计模式,并进行分析比较;4. 将设计模式应用于实际项目中,解决实际问题;5. 总结实验经验,撰写实验报告。
五、实验结果与分析1. 创建型模式(1)单例模式:通过控制对象的实例化,确保一个类只有一个实例,并提供一个访问它的全局访问点。
实验中,我们实现了单例模式,成功避免了资源浪费和同步问题。
(2)工厂模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类。
实验中,我们使用工厂模式创建不同类型的交通工具,提高了代码的可扩展性和可维护性。
(3)抽象工厂模式:提供一个接口,用于创建相关或依赖对象的家族,而不需要指定具体类。
实验中,我们使用抽象工厂模式创建不同类型的计算机,实现了代码的复用和扩展。
(4)建造者模式:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
实验中,我们使用建造者模式构建不同配置的房屋,提高了代码的可读性和可维护性。
2. 结构型模式(1)适配器模式:将一个类的接口转换成客户期望的另一个接口,使原本接口不兼容的类可以一起工作。
实验报告二

实验报告二第一篇:实验报告二成都大学《Visual FoxPro 程序设计》实验报告实验二数据表文件的建立与操作班级:级专业班姓名:实验时间:年月日实验目的:1.学习用菜单法和命令法进行数据表结构的建立、显示、修改及数据表文件的打开和关闭。
2.熟悉掌握用菜单法和命令法进行数据表数据的添加、浏览、修改、删除、检索与统计。
实验内容:1.完成“Visual FoxPro程序设计上机实验及习题集·实验3”中1~10项。
2.完成“Visual FoxPro程序设计上机实验及习题集·实验4”中1~6项。
3.分别复制文件XS.DBF和CJ.DBF为学生.DBF和成绩.DBF,创建一个名为练习.DBC的数据库,在其中完成下列操作,写出命令语句:① 显示86年出生的学生记录,要求只显示学号、姓名和出生日期。
② 将所有的团员记录复制到文件:团员.DBF。
③ 将所有入校总分在500分以下(不包括500分)的学生的入校总分增加5%。
④ 设当前记录指针在第一条,分别用命令:GO、SKIP、LOCATE 和SEEK实现将指针定位到第五条记录。
⑤ 建立一个以入校总分和出生日期排序的索引文件(复合索引,索引名为ZFRQ)。
⑥ 设已分别在两个工作区打开了学生.DBF和课程.DBF,将两个表连接成学生成绩.DBF,在其中包含字段:学号、姓名、语文、数学、英语。
⑦ 设学生.DBF和课程.DBF两表已按学号建立了索引,按学号建立两表的临时关联。
实验收获和建议:成都大学计算机基础教研室制第二篇:射频实验报告二实验二混频器实验一、实验内容1.连接混频器实验板,将混频器设置为下变频模式。
2.用射频连接线将信号加至实验电路板,观测本振信号和射频信号以及中频输出的波形,记录并分析。
3.观测中频输出未经过滤波电路和经过滤波电路的输出信号,分别记录信号的波形并进行分析。
4.保持本振不变,改变射频信号的功率,测量得出混频器的1dB 压缩点二、实验记录1.记录信号源产生的信号波形。
设计模式上机实验二实验报告

设计模式实验二实验报告书专业班级软件 0703 学号 ********** 姓名吉亚云指导老师刘伟时间 2010年4月 24日中南大学软件学院实验二设计模式上机实验二一、实验目的使用PowerDesigner和任意一种面向对象编程语言实现几种常用的设计模式,加深对这些模式的理解,包括装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式。
二、实验内容使用PowerDesigner和任意一种面向对象编程语言实现装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式,包括根据实例绘制相应的模式结构图、编写模式实现代码,运行并测试模式实例代码。
三、实验要求1. 正确无误绘制装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式的模式结构图;2. 使用任意一种面向对象编程语言实现装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式,代码运行正确无误。
四、实验步骤1. 使用PowerDesigner绘制装饰模式结构图并用面向对象编程语言实现该模式;2. 使用PowerDesigner绘制外观模式结构图并用面向对象编程语言实现该模式;3. 使用PowerDesigner绘制代理模式结构图并用面向对象编程语言实现该模式;4. 使用PowerDesigner绘制职责链模式结构图并用面向对象编程语言实现该模式;5. 使用PowerDesigner绘制命令模式结构图并用面向对象编程语言实现该模式;6. 使用PowerDesigner绘制迭代器模式结构图并用面向对象编程语言实现该模式;7. 使用PowerDesigner绘制观察者模式结构图并用面向对象编程语言实现该模式;8. 使用PowerDesigner绘制状态模式结构图并用面向对象编程语言实现该模式;9. 使用PowerDesigner绘制策略模式结构图并用面向对象编程语言实现该模式;10. 使用PowerDesigner绘制模板方法模式结构图并用面向对象编程语言实现该模式。
C语言程序设计上机实验报告(精选5篇)

C语言程序设计上机实验报告(精选5篇)第一篇:C语言程序设计上机实验报告黔南民族师范学院 C语言程序设计上机实验报告系部:计算机科学系年级:2013 级班级:姓名:学号:实验时间:实验成绩:2013年月日实验三顺序结构程序的设计一实验名称:顺序结构程序的设计二.实验环境:windows XP系统,VC++6.0软件三.实验目的:四.实验内容:五.算法描述流程图六.源程序七.测试数据及运行结果八.实验心得实验成绩评分要求1、原创性发现抄袭或雷同成绩为0分2、正确性程序正确60分3、可读性格式清楚,有注释,变量命名规范20分4、健壮性对特殊测试数据有考虑有测试10分5、效率程序运行效率高10分第二篇:《c语言程序设计》上机实验报告要求《c语言程序设计》上机实验报告要求1.实验环境:软件系统:使用的软件环境硬件系统:机型说明2.实验目的:掌握如何编辑、编译、链接调试运行c程序3.实验内容:(1)掌握顺序结构程序设计.P26 ,p49,p62 3.2~3.7(2)掌握选择结构程序设计(if 和switch语句的用法)p4.2~(3)循环结构程序设计(while, dowhile,for语句的用法)。
(4)掌握数组的定义、输入和输出的方法,字符数组、字符串函数的使用。
(5)了解函数的定义,熟悉函数实参与形参的“值传递”方式,掌握函数的嵌套调用和递归调用方法。
(6)熟悉指针含义及其使用。
(7)熟悉结构体和共用体的使用。
(8)熟悉文件的使用。
4.实验要求:(1)输入编写的源程序,检查程序有无错误(语法和逻辑错误),有则改之。
(2)编译和连接,仔细分析编译信息,如有错误应找出原因并改正。
(3)运行程序,输入数据,分析结果。
5.实验结果:输出程序清单和运行结果。
(要求把原题内容,调试好的程序和其结果一并打印),6.实验体会分析运行结果,本次调试程序取得的经验(遇到的问题,解决的方法等)。
第三篇:C程序设计上机实验报告10C程序设计实验报告实验名称:指针与数组学时安排:2课时实验类别:上机操作型实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目的1.理解指针、地址和数组间的关系;2.掌握通过指针操作数组元素的方法;3.掌握数组名作为参数的编程方式。
上机实验报告二

2011年秋季学期上机实验报告姓名:何宗月班级:网络0912班学号:0900002212年级:大三科目:动态Web开发技术第二章上机实验报告一、实验目的1、在动态Web环境下使用技术开发动态网站,从而熟悉对其环境的使用。
2、通过设计器设计格式和aspx.cs代码编写,实现不同的功能。
二、实验内容1、设计产品总价计算器(1)首先依据题目要求,设计的最终效果图应该如1-1所示:图1-1(2)按照要求先在设计器里布置好要使用到的控件,此次设计主要用到工具栏中HTML的一个“水平线”控件,还有标准控件里的两个textbox、一个button件和一个label件。
Label 件用于实现信息的输出,双击button件就可以编写相应的代码。
(3)设计中主要使用到的代码如下:protected void Button1_Click(object sender, EventArgs e){double dSum = 0;int iNum = Convert.ToInt32(TextBox2.Text);double dPrice = Convert.ToDouble(TextBox1.Text);dSum = iNum * dPrice;Label1.Text = "产品总价是:" + dSum.ToString() + "元";}这样就可以简单的实现题目要求了2、设计一个用户登录页面,限制尝试登录次数为3次,若用户尝试登录3次不对,就不能登录,并提示登录次数过多。
(1)实现的效果图应该如图2-1、2-2和2-3所示:图2-1图2-2图2-3(2)用到的主要代码如下:static int i = 0;protected void Page_Load(object sender, EventArgs e){if (!IsPostBack) //第一次运行网页时要运行的程序 Label1.Text = "你有三次登录机会";string s = "";int iWeekDay;iWeekDay=(int)DateTime.Now.DayOfWeek;switch (iWeekDay){case 1: s = "一"; break;case 2: s = "二"; break;case 3: s = "三"; break;case 4: s = "四"; break;case 5: s = "五"; break;case 6: s = "六"; break;default: s = "日"; break;}Response.Write("今天是:"+ DateTime.Now + "星期"+s);}protected void Button1_Click(object sender, EventArgs e){if (TextBox1.Text == "TOM" && textBox3.Text=="123")Label1.Text = "登录成功!";elseif (i < 3) //尝试次数少于3{i = i + 1;Label1.Text = "用户名或密码不对";}else //错误超过3次执行以下语句{Label1.Text = "登录已超过三次" + i.ToString(); //给出错误提示信息Button1.Visible = false; //隐藏登录按钮}}3、利用C#的日期相关法,根据当前日期按“今天是:2009年11月20日星期三“的格式输出当前年、月、日和星期。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
设计模式实验二实验报告书专业班级软件0703学号24姓名吉亚云指导老师刘伟时间2010年4月24日中南大学软件学院实验二设计模式上机实验二一、实验目的使用PowerDesigner和任意一种面向对象编程语言实现几种常用的设计模式,加深对这些模式的理解,包括装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式。
二、实验内容使用PowerDesigner和任意一种面向对象编程语言实现装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式,包括根据实例绘制相应的模式结构图、编写模式实现代码,运行并测试模式实例代码。
三、实验要求1. 正确无误绘制装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式的模式结构图;2. 使用任意一种面向对象编程语言实现装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式,代码运行正确无误。
四、实验步骤1. 使用PowerDesigner绘制装饰模式结构图并用面向对象编程语言实现该模式;2. 使用PowerDesigner绘制外观模式结构图并用面向对象编程语言实现该模式;3. 使用PowerDesigner绘制代理模式结构图并用面向对象编程语言实现该模式;4. 使用PowerDesigner绘制职责链模式结构图并用面向对象编程语言实现该模式;5. 使用PowerDesigner绘制命令模式结构图并用面向对象编程语言实现该模式;6. 使用PowerDesigner绘制迭代器模式结构图并用面向对象编程语言实现该模式;7. 使用PowerDesigner绘制观察者模式结构图并用面向对象编程语言实现该模式;8. 使用PowerDesigner绘制状态模式结构图并用面向对象编程语言实现该模式;9. 使用PowerDesigner绘制策略模式结构图并用面向对象编程语言实现该模式;10. 使用PowerDesigner绘制模板方法模式结构图并用面向对象编程语言实现该模式。
五、实验报告要求1. 提供装饰模式结构图及实现代码;2. 提供外观模式结构图及实现代码;3. 提供代理模式结构图及实现代码;4. 提供职责链模式结构图及实现代码;5. 提供命令模式结构图及实现代码;6. 提供迭代器模式结构图及实现代码;7. 提供观察者模式结构图及实现代码;8. 提供状态模式结构图及实现代码;9. 提供策略模式结构图及实现代码;10. 提供模板方法模式结构图及实现代码。
六、实验结果(1) 装饰模式某图书管理系统中,书籍类(Book)具有借书方法borrowBook()和还书方法returnBook() 。
现需要动态给书籍对象添加冻结方法freeze()和遗失方法lose()。
使用装饰模式设计该系统,绘制类图并编程实现。
package DirectorPattern;interface Book{void borrowBook();void returnBook();}final class MyBook implements Book{public void borrowBook(){"MyBook borrowing!");}public void returnBook(){"MyBook returning!");}}abstract class BookDirector implements Book {private Book book;public BookDirector(Book book){"Book directoring!");=book;}public void borrowBook(){();}public void returnBook(){();}}class NewBook extends BookDirector{public NewBook(Book book){super(book);"Book changed to NewBook!");}public void freeze(){"Book freezing!");}public void lose(){"Book lost!");}}public class BookDirectorClient {public static void main(String a[]){0..1 0..*0..10..*0..10..*0..10..*MainFrame----memorycpudiskos: Memory: CPU: HardDisk: OS+ +on ()off (): void: voidMemory+ +check ()off (): void: voidCPU++run ()off (): void: voidHardDisk++read ()off (): void: voidOS++load ()off (): void: void0..10..*Software+run (): voidProxy-app: Application+<<Implement>>run (): voidApplication+<<Implement>>run (): voidLeader--namesuccessor: String: Leader+++<<Constructor>>handleRequest (ShoppingRequest request) setSuccessor (Leader successor)Leader (String name): void: void ShoppingRequest--shoppingReason billMoney: String: double+ + + +<<Getter>><<Setter>><<Getter>><<Setter>>getBillMoney ()setBillMoney (double newBillMoney)getShoppingReason ()setShoppingReason (String newShoppingReason): double: void: String: void Director+ +<<Override>><<Constructor>>handleRequest (ShoppingRequest request)Director (String name): voidDepartmentManager++<<Constructor>><<Override>>DepartmentManager (String name)handleRequest (ShoppingRequest request): voidViceManager++<<Constructor>><<Override>>ViceManager (String name)handleRequest (ShoppingRequest request): voidGeneralManager++<<Constructor>><<Override>>GeneralManager (String name)handleRequest (ShoppingRequest request): voidetItemName().equals(itemName)){return (i);}}return null;}}lick();"-------------------------------------");("create").click();"-------------------------------------");("edit").click();}}运行结果:(6) 迭代器模式某商品管理系统的商品名称存储在一个字符串数组中,现需要自定义一个双向迭代器(MyIterator)实现对该商品名称数组的双向(前向和后向)遍历。
绘制类图并编程实现(设计方案必须符合DIP)。
NewCollection-obj: Object[]+<<Implement>>createIterator (): MyIterator NewIteratorNewIterator-currentIndex: int+++++++++<<Implement>><<Implement>><<Implement>><<Implement>><<Implement>><<Implement>><<Implement>><<Implement>><<Implement>>first ()last ()hasNext ()hasPrevious ()next ()previous ()isFirst ()isLast ()getCurrentItem (): void: void: boolean: boolean: void: void: boolean: boolean: ObjectMyCollection+createIterator (): MyIteratorMyIterator+++++++++first ()last ()hasNext ()hasPrevious ()next ()previous ()isFirst ()isLast ()getCurrentItem (): void: void: boolean: boolean: void: void: boolean: boolean: Objectpackage IteratorPattern;interface MyCollection { MyIterator createIterator();}1..11..1MySubject-v : Vector+++addObserver (MyObserver observer)deleteObserver (MyObserver observer)fireNotice (): void : void : voidIBMStock-price : double++<<Getter>><<Setter>>getPrice ()setPrice (double newPrice): double : voidIBMStocker--name subject : String : IBMStock++<<Implement>><<Constructor>>response ()IBMStocker (String name, IBMStock subject): void MyObserver +response (): void;esponse(); } }}etOrderMoney();}"您一共需要付:"+totalMoney+"RMB。