第一篇:趣味实验实验报告
趣味实验
实验员:张燕年级、班级:09级化学三班学号:40907147 联系方式:***
一、实验目的:
激发学生学习化学的兴趣,通过化学实验的趣味化活动,使学生的思维更加活跃,手脑并用的能力更强,创新意识和创造精神得到充分发挥。
二、实验内容:
(一)蓝色振荡实验:
1.实验原理:
亚甲基蓝的水溶液呈蓝色,在碱性条件下,葡萄糖可以将它还原为无色,搅拌条件下空气会把无色产物亚甲基白氧化为蓝色,蓝色又被还原为无色,如此反应,实验能多次重复。
2.实验仪器和药品:
碘量瓶(用于微量元素的测定)、小烧杯、NaOH固体、葡萄糖、亚甲基蓝溶液(10mol/L)。
3.实验步骤:
(1)称取5.0g氢氧化钠(为整个实验过程提供一个碱性环境)于小烧杯中,加入约30mL水充分溶解。再将所得溶液转移至碘量瓶中,加水至约150mL;
(2)称取7g葡萄糖加入到(1)所得的溶液中,充分搅拌,使其完全溶解。再向碘量瓶中滴加1mL(约20滴)亚甲基蓝溶液,缓慢摇匀,之后静置大约半分钟,会发现蓝色的溶液慢慢变为无色透明的溶液,再继续振荡碘量瓶,会发现溶液又变回蓝色,再继续静置半分钟左右,溶液又变为无色。此现象可重复若干次。
(二)化学冰袋:
1.实验原理:
铵盐溶解会吸热,可以起到降温的效果。
2.实验仪器和药品:
密封袋、(NH4)2SO4、NH4NO3、Na2SO410H2O和NaHSO4。
3.实验步骤:
(1)分别称取4g硫酸铵、5g硝酸铵、9.6g十水硫酸钠和4g硫酸氢钠;
(2)将所称取的药品按顺序加入到密封袋中,添加顺序如下:十水硫酸钠、硫酸氢钠、硫酸铵和硝酸铵。将所加的药品用手压碎,会发现密封袋温度很低,此时我们的冰袋就做好了。
(三)固态汽水:
1.实验原理: 3
碳酸氢钠和柠檬酸钠反应可以释放出二氧化碳,能带走部分热量,这就是特别爽口的碳酸饮料。
2.实验仪器和药品:
烧杯、玻璃棒、研钵,柠檬酸、柠檬黄、蔗糖、明胶、碳酸氢钠。
3.实验步骤:
(1)称取0.1g明胶于小烧杯中,加入约10mL水使其吸水膨胀,如溶解过慢可用酒精灯适当微热;
(2)称取2.5g碳酸氢钠与小烧杯中,再取1mL(1)所得的溶液加入其中,最后用电吹风将小烧杯中的液体吹干;
(3)取4g蔗糖、4.5g柠檬酸和微量的柠檬黄于研钵中,研细成粉末状之后再加入到(2)所得的固体药品中,这时我们就制成了固体汽水;
(4)用100mL来冲调固体汽水,就制成了我们日常饮用的爽口的饮料。
三、实验注意事项
1、明胶微热溶解时不可温度太高,烧杯距离火焰需保持一定的距离,原因是明胶是一种蛋白质,高温容易变性。
2、称量NaOH时需用烧杯,纸张要现称现用,这样也会产生潮解。当然由于此实验主要是要一个碱性环境,所以此影响在此实验中可以忽略。
3、蓝色振荡实验过程中包含的是一种热力学平衡,在2—3h后这个实验现象就完全消失,此时已达到了极限状态。
4、冰袋制作不能使用无水碳酸钠(纯减)粉末,必须是含结晶水的晶体碳酸钠或成块状纯碱。可以将无水碳酸钠粉末溶于水,然后加热浓缩至晶体析出,自制晶体碳酸钠。
四、实验反思1、1.化学是一门实验科学,化学实验能够引起学生的认知兴趣,如果把实验做趣味化处理,则更能引起学生的兴趣,产生强烈的学习动机。我们本次实验包括观察性趣味实验和操作性趣味实验。
2、作为一名准化学教师,做好演示实验是很重要的一项教学技术,尤其是趣味实验,它在激发学生学习化学方面起着很重要的作用。而在这次演示实验时,我由于过于紧张,所以出现了小差错,而且讲解实验的方式也不够生动,没有“趣味”,没有很好的达到趣味实验所要求达到的目的。
第二篇:趣味实验报告
趣味实验三则
一、实验教学目标
了解本实验趣味实验的原理,能够独立操作并演示本实验。在实验过程中学会发现问题,体会化学学习的乐趣,感受化学与生活的密切联系。
二、实验原理
1.蓝色振荡实验
亚甲基蓝的水溶液呈蓝色,在碱性条件下,葡萄糖可把它还原为无色,搅拌条件下空气会把无色产物氧化为蓝色,蓝色又被还原为无色,如此反应,实验能多次重复。可以表示为:
亚甲基蓝溶液
亚甲基白溶液
如果有酚酞试剂滴加的话,我们会发现颜色变化中还会多了红色与紫色。原因是当溶液在碱性条件下时,滴加酚酞试剂滴加后溶液显红色。所以:①当葡萄糖可把亚甲基蓝还原为无色时,由于溶液显强碱性,此时溶液呈红色;②搅拌或略微震荡条件下空气会把部分无色产物氧化为蓝色,由于紫色与蓝色相混,由于颜色的混合效应,我们将看到此时溶液显紫色;③剧烈震荡后,将会有更多的无色产物被氧化为蓝色的亚甲基蓝,这时由于蓝色过深,将会遮掩酚酞的红色,结果我们将会看到溶液呈蓝色。
2.便携式化学冰袋
无机盐溶于水包括两个步骤:①.溶质分子的扩散过程;②.溶质分子的溶剂化过程;物质溶解后,溶液的温度是升高还是降低,要看这两个过程哪一个占主导地位,当吸收的热量大于放出的热量,溶液的温度将降低;当吸收的热量小于放出的热量时,溶液的温度将升高。
NH4NO3、NH4Cl等铵盐,溶于水时具有强烈吸热降温的性质,它们还可以从与其相接触的晶体盐中夺取结晶水而溶解吸热,利用这种性质,可以通过简单地混合两种或两种以上的盐而制冷,制成化学“冰袋”。该种便携式“冰袋”可应用于需简便制冷的场合,如外出郊游时,对饮料和食品的保鲜、制冷。该实验主要是通过观察Na2SO4•10H2O, NH4NO3,(NH4)2 SO4混合后的制冷效果以及添加NaHSO4混合后的制冷效果,从而进行比较。
3.固体汽水
固体汽水与液体汽水所不同的是:液体汽水中的CO2一般是通过加压的方法使其溶解在水中;而固体汽水中的CO2是借助于原料中的碱性物质小苏打(NaHCO3),与可食用的有机酸柠檬酸反应而产生的。但是酸和碱混放在一起极易发生作用,因此,为了提高贮藏的稳定性,通常是先将小苏打用天然胶进行包结,使其在固态是不与固态的柠檬酸反应;当放入水中,由于天然胶的溶解,便可与酸反应,缓慢释放CO2出来。其制备主要原理是将碳酸氢钠分散在明胶溶液中,然后烘干,接着于各种所需药品(香精,蔗糖,柠檬酸,色素)混合,饮用时取其部分,置于饮水器皿,倒入水溶解时柠檬酸会与碳酸氢钠反应,进而放出CO2。这样喝起来口感和液体汽水相似,味道也很不错反应方程式如下:
三、实验仪器、材料与试剂
1.碘量瓶、托盘天平、药匙;NaOH固体、葡萄糖、亚甲基蓝乙醇溶液。2.软质塑料袋、托盘天平、药匙;Na2SO4·10H2O,(NH4)2SO4,NaHSO4,NH4NO3。
3.烧杯、量筒、玻璃棒、研钵、托盘天平、药匙、滴管、酒精灯、三脚架、石棉网、电吹风;明胶、小苏打(NaHCO3)、无水柠檬酸、蔗糖、食用香精、柠檬黄色素。
四、实验内容
1.蓝色振荡
(1)配制溶液:称取2gNaOH固体和3g葡萄糖,配成50mL溶液于碘量瓶中,缓慢滴加>10滴亚甲基蓝试剂,摇匀。
(2)实验现象:
①开始时溶液呈蓝色,接着蓝色逐渐消失,变为无色,并形成斑纹结构。
②剧烈摇晃锥形瓶,锥形瓶中又出现同原来相似的蓝颜色,过几分钟,蓝色溶液又转变为无色。如果震荡,溶液又会出现蓝色,静置后又会变为无色。实验整体现象如此转变。
③待溶液静置为无色后,往溶液中滴加5滴酚酞试剂,溶液变红,轻微缓慢持续震荡,溶液颜色依次变为紫红,紫色,最终变为蓝色。静置后溶液的颜色又从蓝色→紫色→紫红色→红色这样转变。然后继续震荡静置,实验现象与以上相同。
(3)实验说明:
①亚甲基蓝的水溶液呈蓝色,在碱性条件下,葡萄糖可把它还原为无色,搅拌条件下空气会把无色产物(亚甲基白)氧化为蓝色,蓝色又被还原为无色,如此反应,实验能多次重复。
②如果有酚酞试剂滴加的话,我们会发现颜色变化中还会多了红色与紫色。原因是当溶液在碱性条件下时,滴加酚酞试剂滴加后溶液显红色。溶液从蓝色→紫色→紫红色→红色这样转变。
注意事项:
①蓝色振荡实验加入酚酞之后由于实验操作水准要求较高,用力摇晃程度的掌控能力需要很强,这样颜色的变化才可以让同学们看的明显,而不是刹那间的转变。其实此实验在(3)实验说明:柠檬酸与碳酸氢钠反应放出二氧化碳气体。
五、实验安全与体会
1.在实验室做实验时为了个人安全应该戴手套和护目镜。2.实验前,一定要先投湿抹布,放在固定显眼的位置备用。3.实验后形成的废弃物应倒入指定位置。
4.进实验室不留长发,不穿拖鞋、短裤等,注意实验台的干净和整洁。5.通过中教实验的学习,我不仅在实验操作技能、实验安全等方面得到了提高,并且在教师教育技能方面通过观察讨论和老师的讲解也有了进步,并且让我意识到细节很重要。
6.对于实验内容,课前一定要仔细思考,讲究科学性。
7.对于学生的回答,教师应该做出及时的评价。可做出积极的评价,但不能不加思考一味肯定。
8.NaOH溶液的配置是一个放热过程,溶解固体NaOH时避免过热迸溅而腐蚀皮肤。
9.实验室卫生条件不过关,禁止品尝制得的汽水。
六、相关文献与重点文献综述
有人对蓝色振荡实验进行了改进,使蓝瓶子绿起来。具体做法是:使用生活中常见还原剂维生素C 代替传统实验中的葡萄糖,亚甲基蓝(MB2+)被VC 片还原为亚甲基白(MB2+)。但这种无色溶液在空气中振荡后不能被氧化自行逆转,需要添加催化Cu2+剂,才能被氧气氧化为亚甲基蓝;Cu2+同时又可以在亚甲基蓝被VC 片还原过程中起到催化作用。整个实验中添加NaHCO3 调节溶液的pH ,促进反应更加完全。Cu2+ 的加入,使溶液还原后最终的颜色显现为淡绿色。
七、参考文献
[1] 刘清勇.固体汽水的配制[J].农村百事通, 1994,(08)[2] 詹汉英,雷建金.蓝色振荡趣味实验[J].中学化学教学参考, 2000,(Z1)[3] 金献海.化学趣味实验[J].中学生数理化(高中版), 2005,(17)[4] 郭磊.便携式化学冰袋制作技术[J].中小企业科技, 1994,(05)[5] 张宏志.化学趣味实验五例[J].教学仪器与实验, 2008,(04)[6] 崔中敏.化学冰袋的研制[J].上海化工, 1996,(06)
第三篇:交换机实验 实验报告
交换机实验II 实验目的
1.理解掌握环路对网络造成的影响,掌握环路的自检测的配置; 2.理解路由的原理,掌握三层交换设备路由的配置方法 3.掌握DHCP的原理以及其配置方法
实验步骤
配置交换机的IP地址,及基本的线路连接等; 实验1:
①.用独立网线连接同一台交换机的任意两个端口时期形成自环
②.对交换机的两个端口进行配置,开启所有端口的环路检测功能、设置检测周期等属性 实验2:
①.按图1方式对三层交换机的VLAN、端口进行配置
②.在交换机中分别对VLAN的IP地址进行配置
③.启动三层交换机的IP路由
④.设置PC-A、PC-B的IP地址,分别将它们的网关设置为所属三层交换机VLAN的IP地址
⑤.通过Ping验证主机A、B之间的互通状况 实验3:
三层交换机作为DHCP服务器,两台PC-A和PC-B,分别从交换机上获取IP地址。PC-C手动配置IP地址。
①.按图2方式建立主机A、B、C与三层交换机间的连接,配置交换机的IP地址
②.配置三层交换机的DHCP地址池属性
③.启动DHCP服务
④.(1)查看主机A、B能否正确的获取到给定范围内IP地址,通过Ping查看网关、交换机之间的互通情况;(2)拔掉主机B的网线,将主机C的IP地址设置为主机B所获取的到的IP地址,然后再插上B机网线,查看其是否能获取到不同的IP地址;(3)分别重启主机A、B及交换机,查看A、B获取到的IP地址是否和前一次相同。
图1.三层路由连接图
图2.DHCP连接图
实验结果
实验1:环路测试
交换机出现环路的自检测结果:
实验2:路由配置:
主机A连接交换机端口2,划分为vlan10,端口IP地址为192.168.1.1。主机IP地址192.168.1.23;
主机B连接交换机端口10,划分为vlan20,端口IP地址为192.168.2.1。主机IP地址192.168.2.27;
在未设置IP routing之前主机A、B分属于不同网段,因此它们不能互通,设置后通过路由则可相互联通:
实验三:DHCP配置和验证:
主机A、B、C分别连接到交换机的端口2,端口18和端口10上。其中主机A、B的IP地址自动获取,主机C的IP地址则手动配置。
主机A通过DHCP获取的IP地址(192.168.1.211)
主机B通过DHCO获取到的IP地址(192.168.1.210)
测试主机A与主机C的互通性(可连通)
测试主机B与主机A、C之间的互通性(可连通)
当主机C配置为主机B获取到的IP地址是会产生IP地址冲突的错误提示:
配置的主机C的IP地址与主机B的IP地址相冲突
主机B网线重新连接后获取到的新的IP地址
交换机重新启动后A、B主机自动获取到的IP地址信息:
主机A自动获取的IP地址
主机B自动获取的IP地址
DHCP可分配IP地址池内IP数目小于申请的主机数目时实验验证情况:(可分配的IP地址为192.168.1.210 — 192.168.1.212),此时连接主机A、B、C、D。
主机D自动获取IP地址的结果
实验与结果分析
环路问题:
分为第二层环路和第三层环路,所有环路的形成都是由于目的路径不明确导致混乱而造成的。例如第二层,一个广播信息经过两个交换机的时候会不断恶性循环的产生广播造成环路,而第三层环路则是原路由意外不能工作,造成路由通告错误,形成一个恶性循环。传统的二层预防技术主要有STP(Spanning tree)来预防,STP在不断的修改和更新中,产生了诸如STP/RSTP/MSTP等多个版本,大家可根据各自的组网规划来选择应用,但是STP的配置复杂度,以及协议本身的开销通常都是网络管理人员比较头痛的事情。
解决因环路(自环或外环)对网络造成的影响,能够提高网络的自检错性、容错性和健壮性。环路检测的过称为:对交换机的每个端口周期性的发送回路检测(Loopback-detection)数据包;交换机查看端口收到包的CPUMAC字段,如果其中存的是本交换机的MAC,则本交换机的某些端口形成环路,否则将其丢弃,出现环路后,交换机会关闭端口号较大的端口以消除环路。图1中反映了在交换机开启所有端口的环路检测功能后每隔30秒检测到的信息以及对端口的关闭等操作信息。
三层路由意义和工作过程: 实现不同VLAN间主机的通信,通过配置VLAN能够有效地控制广播域的大小。在同一VLAN内的主机间的通信不需要经过交换机的路由处理可直接到达目的主机,当不同VLAN间通讯时,数据包先转发至路由器,由路由器查询其路由转发表选择正确的端口间数据包转发到目的VLAN的交换机,再由目的VLAN内交换机将数据包转发至目的主机。其中扮演主要角色的即为交换机的路由功能,如果没有设置相关属性则不同VLAN间不能通讯。
因此在图3的验证实验中,通过路由器的转发功能实现了分别位于VLAN10和VLAN20中主机A、B之间的通信,在未配置IP Routing之前VLAN10和VLAN20分属不同网段(A、B也属于不同网段),因此不能实现通信,配置之后路由器(三层交换设备)可通过内部路由转发表实现数据的转发和通信。
DHCP工作过程与实验分析:
即动态主机配置协议(Dynamic Host Configuration Protocol),是一个局域网的网络协议,使用UDP协议工作,主要有两个用途:给内部网络或网络服务供应商自动分配IP地址,是使内部网络管理员能够集中管理(从中心结点监控)和自动分配IP 网络地址的通信协议。当某台计算机移到网络中的其它位置时,能自动收到新的IP 地址。DHCP 服务器从地址池中为客户端选择并分配IP 地址及其他相关参数当作为DHCP服务器的设备收到客户端发来的DHCP 请求时,将从地址池中挑选一个空闲的IP 地址。
DHCP工作过程:
当 DHCP客户端第一次登录网络的时候,也就是客户发现本机上没有任何 IP 数据设定,它会向网络发出一个 DHCP DISCOVER封包(广播包)。因为客户端还不知道自己属于哪一个网络,所以封包的来源地址会为 0.0.0.0,而目的地址则为 255.255.255.255,然后再附上 DHCP discover 的信息,向网络进行广播。如果都没有得到DHCP服务器的响应,客户端则会显示错误信息,宣告 DHCP discover 的失败。之后,基于使用者的选择,系统会继续在 5 分钟之后再重复一次 DHCP discover 的过程。
当 DHCP服务器监听到客户端发出的 DHCP discover 广播后,它会从那些还没有租出的地址范围内,选择最前面的空置 IP,连同其它 TCP/IP 设定,响应给客户端一个 DHCP OFFER封包。由于客户端在开始的时候还没有 IP 地址,所以在其 DHCP discover封包内会带有其 MAC 地址信息,并且有一个 XID 编号来辨别该封包,DHCP服务器响应的 DHCP offer 封包则会根据这些资料传递给要求租约的客户。根据服务器端的设定,DHCP offer封包会包含一个租约期限的信息。
如果客户端收到网络上多台 DHCP 服务器的响应,只会挑选其中一个 DHCP offer 而已(通常是最先抵达的那个),并且会向网络发送一个DHCP request广播封包,告诉所有 DHCP 服务器它将指定接受哪一台服务器提供的 IP 地址。同时,客户端还会向网络发送一个 ARP封包,查询网络上面有没有其它机器使用该 IP 地址;如果发现该 IP 已经被占用,客户端则会送出一个 DHCPDECLINE 封包给 DHCP服务器,拒绝接受其 DHCP offer,并重新发送 DHCP discover 信息。事实上,并不是所有 DHCP客户端都会无条件接受 DHCP服务器的 offer,尤其这些主机安装有其它 TCP/IP 相关的客户软件。客户端也可以用 DHCP request 向服务器提出 DHCP 选择,而这些选择会以不同的号码填写在 DHCP Option Field 里面。
当 DHCP服务器接收到客户端的 DHCP request 之后,会向客户端发出一个DHCPACK 响应,以确认 IP 租约的正式生效,标志着一次DHCP的工作过程完成。
图4—6反映了主机A、B通过自动获取IP地址方式由三层交换机动态分配IP后,各自得到的IP地址,由于A、B、C连接与同一台交换设备上,由没有VLAN划分等因素,所以它们之间不论是自动获取IP地址还是手动配置IP地址(不冲突的前提下)都能相互连通。当为主机C配置成已得到自动分配IP地址的主机B的IP地址时,自然会出现IP地址冲突的出错信息提示。当B网线重新链接时,相当于重新加入的客户端,交换机会从地址池中顺序选择下一个未分配的IP地址给新的请求用户。因此主机B会获得新新的IP地址,并且其值是主机C的IP地址的下一个邻接IP地址(在未超出可分配的IP地址范围条件下)。图7 —10中反映了上述描述的结果。
图11中显示了一种造成IP地址动态分配失败的情形:可分配的IP地址数仅有3个,而由4台主机请求分配IP地址,当可分配地址全部分配给主机A、B、C后,主机D的请求不能得到满足,因此未得到给定范围内的合理IP地址。
第四篇:实验一 实验报告
网 络 程 序 设 实验报告
实验名称:Winsock编程接口实验 实验类型: 验 证 型
计
一、实验目的
掌握Winsock的启动和初始化;
掌握gethostname(),gethostbyname(),GetAdaptersInfo()等信息查询函数的使用。
二、实验设计
实验内容:
1、编写程序能同时实现对多个域名的解析。比如在控制台输入:getip www.xiexiebang.com对应的IP地址列表。
2、编写程序获取并输出本地主机的所有适配器的IP地址,子网掩码,默认网关,MAC地址。
根据实验内容编写程序:
1、对相关域名进行解析,利用gethostbyname()完成解析,用到的结构体为:
struct hostent{ char FAR*
h_name;char FAR* FAR* h_aliases;short
h_addrtype;short
h_length;char FAR* FAR* h_addr_list;}
得到的IP地址列表由h_addr_list存储;
2、利用GetAdaptersInfo()函数获得本地主机的相关信息,通过IP_ADAPTER_INFO结构体返回所需信息。
IP_ADAPTER_INFO的定义如下: typedef struct _IP_ADAPTER_INFO {
struct _IP_ADAPTER_INFO* Next;
DWORD ComboIndex;
char AdapterName[MAX_ADAPTER_NAME_LENGTH + 4];
char Description[MAX_ADAPTER_DESCRIPTION_LENGTH + 4];
UINT AddressLength;
BYTE Address[MAX_ADAPTER_ADDRESS_LENGTH];
DWORD Index;
UINT Type;
UINT DhcpEnabled;
PIP_ADDR_STRING CurrentIpAddress;
IP_ADDR_STRING IpAddressList;
IP_ADDR_STRING GatewayList;
IP_ADDR_STRING DhcpServer;
BOOL HaveWins;
IP_ADDR_STRING PrimaryWinsServer;
IP_ADDR_STRING SecondaryWinsServer;
time_t LeaseObtained;
time_t LeaseExpires;
} IP_ADAPTER_INFO, *PIP_ADAPTER_INFO;
三、实验过程(包含实验结果)
1、分析题目,编写程序;
2、将编写的程序进行编译、运行,输入题目给定的内容,完成题目要求; 结果如下:
第1题:
第2题:
四、讨论与分析
思考题:
1、Winsock初始化的作用:只有调用了WSAStartup()进行初始化之后,应用程 序才能调用其他Windows Sockets API函数,实现网络通信;
2、函数原型为:
DWORD GetAdaptersInfo(PIP_ADAPTER_INFO pAdapterInfo,//接受数据的缓冲区
PULONG pOutBufLen
// 数据的长度大小);
3、域名解析时出现域名对应多个IP,原因:该域名存在于多个服务器。
五、实验者自评
通过本次实验,我掌握了Winsock的启动和初始化以及gethostname(),gethostbyname(),GetAdaptersInfo()等函数查询的使用,加深了以前对课本知识的认识程度。
六、附录:关键代码(给出适当注释,可读性高)
第1题代码:
////////////////////////////////////////////////// // GetAllIps.cpp文件
//#include “../common/InitSock.h” #include
using namespace std;
#pragma comment(lib, “WS2_32”)// 链接到WS2_32.lib //CInitSock initSock;// 初始化Winsock库
void main(){
char szMessage[256];// 取得本地主机名称
// 初始化
WSADATA wsaData;if(WSAStartup(MAKEWORD(2,2), &wsaData)!= 0){
exit(0);}
// 通过主机名得到地址信息
printf(“ Get IP::”);gets(szMessage);
// 获取主机信息
hostent *pHost = ::gethostbyname(szMessage);
// 打印出所有IP地址
in_addr addr;for(int i = 0;;i++){
char *p = pHost->h_addr_list[i];
if(p == NULL)
break;
memcpy(&addr.S_un.S_addr, p, pHost->h_length);
char *szIp = ::inet_ntoa(addr);
printf(“ 服务器 %s IP地址:%s n ”,szMessage, szIp);
printf(“服务器名字: %s n”,pHost->h_name);}
/////////////////////////// ::WSACleanup();
}
第2题代码:
// 获取并输出本地主机的所有适配器的IP地址,子网掩码,默认网关,MAC地址
#include
void main(){ // 定义变量
IP_ADAPTER_INFO *pAdapterInfo;ULONG ulOutBufLen;DWORD dwRetVal;PIP_ADAPTER_INFO pAdapter;
pAdapterInfo =(IP_ADAPTER_INFO *)malloc(sizeof(IP_ADAPTER_INFO));ulOutBufLen = sizeof(IP_ADAPTER_INFO);// 第一次获取适配器信息,得到ulOutBufLen的实际大小
if(GetAdaptersInfo(pAdapterInfo, &ulOutBufLen)!= ERROR_SUCCESS){
free(pAdapterInfo);
pAdapterInfo =(IP_ADAPTER_INFO *)malloc(ulOutBufLen);} // 第二次获取适配器信息,获得了pAdapterInfo信息
if(dwRetVal = GetAdaptersInfo(pAdapterInfo, &ulOutBufLen)!= ERROR_SUCCESS){
cout<<“GetAdapterInfo Error!”< // 打印MAC地址信息、子网掩码以及网关 pAdapter = pAdapterInfo;while(pAdapter){ cout<<“MAC Address: ”; for(int i=0;i AddressLength;i++) { if(i ==(pAdapter->AddressLength-1)) { cout< } else { cout< } } cout< cout<<“IP 地址:”< IpAddressList.IpAddress.String< cout<<“子网掩码 :”< IpAddressList.IpMask.String< cout<<“网关 :”< IpAddressList.IpAddress.String< cout<<“****************************************”< pAdapter = pAdapter->Next;} // 释放资源 if(pAdapterInfo){ free(pAdapterInfo);} cout< } 实验报告一、二、三、四、五、六、七、实验名称:分析PL0词法分析程序 试验目的 学习PL0程序的词法分析程序GenSym的实现过程 结合具体的程序了解词法分析过程 实验设备 PC兼容机 DOS操作系统或Windows操作系统 TurboPascal软件等 实验要求 独立完程序的分析过程 自己跟踪程序的执行过程 记录程序的执行过程 记录程序的运行结果 实验内容 实验过程记录 源程序第五篇:实验报告格式--实验2