vb第07章
第07章 动态网站技术概述
1.PHP技术的特点
(1)PHP是免费的,可以从PHP官方网站()自 由下载PHP的相关软件。 (2)PHP的源代码是开源的,所有的PHP源代码理论上都可以得到。 (3)PHP程序开发效率高、运行速度快。相对于其他语言,编辑简单, 实用性强,更适合初学者。 (4)由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、 WINDOWS等环境下,所以跨平台性强。 (5)由于PHP消耗相对较少的系统资源,所以其运行效率高。 (6)利用PHP可以动态创建图像。 (7)在PHP4和PHP5 中,面向对象功能得到了很大的改进,因此可以 用来开发大型商业系统。
7.4.1 IIS搭建Web服务器
7.4 动态Web服务器
静态网页制作好以后,可以直接在浏览器中进行预览和测试,但是动态网 页制作好以后,必须要在Web服务器上进行预览和测试,也就是说需要搭建一 个Web服务器的环境,用来开发测试动态网页,甚至可以直接用来发布静态网 站和动态网站。 对于Windows平台来说,IIS就是标准的Web服务器,而对于UNIX和Linux平 台来说,Apache就是最常用的Web服务器。
1.ASP技术的特点
(1)利用ASP技术可以突破静态网页的一些功能限制,实现动态网页技术。 (2)ASP代码是嵌入在HTML代码所组成的文件中的,因此易于学习和使用。 (3)服务器上的ASP程序会在服务器端执行ASP程序,并将结果以HTML格式 传送到客户端浏览器上,因此兼容性极好,使用各种浏览器都可以正常浏览 ASP所产生的网页。 (4)ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更加 强大,并且大大节省了开发时间,提高了开发效率。 (5)ASP可以使用服务器端ActiveX组件来执行各种各样的特殊任务,如存取 数据库、发送Email或访问文件系统等,使得网页的功能更加丰富。 (6)由于服务器是将ASP程序执行后的结果以HTML形式传回到客户端浏览器 的,因此使用者根本不会看到ASP所编写的原始程序代码,可防止ASP程序代 码被窃取,提高了网站的安全性。 (7)利用ASP可以方便地连接ACCESS或SQL数据库,这为网站的开发提供了 便捷的路径。 (8)ASP不仅可以与HTML结合开发网站,也可以与XHTML(eXtensible HyperText Markup Language,可扩展超文本标记语言)和WML(Wireless Markup Language,无线标记语言)结合制作WAP手机网站。 这是因为ASP技术具有如上所述的诸多优点,所以也是目前应用最为广泛的动 态网站制作技术。
高中物理 第07章 恒定电流 典型例题(含答案)【经典】
第七章 恒定电流基本公式:I =q t ; I =U R ; I =neSv . R =ρl S W 电=qU =IUt Q 热=I 2Rt. I =E R +r知识点一:电流的计算、电阻定律、电功(率)与热量(热功率)的计算与区别、欧姆定律、U-I 图像1.(单选)通常一次闪电过程历时约0.2~0.3 s ,它由若干个相继发生的闪击构成.每个闪击持续时间仅40~80 μs ,电荷转移主要发生在第一个闪击过程中.在某一次闪电前云地之间的电势差约为1.0×109V ,云地间距离约为1 km ;第一个闪击过程中云地间转移的电荷量约为6 C ,闪击持续时间约为60 μs.假定闪电前云地间的电场是均匀的.根据以上数据,下列判断正确的是( ).答案 ACA .闪电电流的瞬时值可达到1×105 AB .整个闪电过程的平均功率约为1×1014 WC .闪电前云地间的电场强度约为1×106 V/mD .整个闪电过程向外释放的能量约为6×106 J2.(单选)有Ⅰ、Ⅱ两根不同材料的电阻丝,长度之比为l 1∶l 2=1∶5,横截面积之比为S 1∶S 2=2∶3,电阻之比为R 1∶R 2=2∶5,外加电压之比为U 1∶U 2=1∶2,则它们的电阻率之比为( ). 答案 BA .2∶3B .4∶3C .3∶4D .8∶33、(单选)两根完全相同的金属裸导线,如果把其中的一根均匀拉长到原来的2倍,把另一根对折后绞合起来,然后给它们分别加上相同电压后,则在相同时间内通过它们的电荷量之比为( ). 答案 CA .1∶4B .1∶8C .1∶16D .16∶14.(单选)用电器距离电源为L ,线路上的电流为I ,为使在线路上的电压降不超过U ,已知输电线的电阻率为ρ.那么,输电线的横截面积的最小值为( ).答案 BA .ρL /RB .2ρLI /UC .U /(ρLI )D .2UL /(I ρ)5.(单选)欧姆不仅发现了欧姆定律,还研究了电阻定律.有一个长方体金属电阻,材料分布均匀,边长分别为a 、b 、c ,且a >b >c .电流沿以下方向流过该金属电阻,其中电阻阻值最小的是( ).答案 A6、(单选)额定电压都是110 V ,额定功率P A =100 W ,P B =40 W 的电灯两盏,若接入电压是220 V 的下列电路上,则使两盏电灯均能正常发光,且电路中消耗的电功率最小的电路是( ). 答案 C7.(单选)R 1和R 2分别标有“2 Ω,1.0 A”和“4 Ω,0.5 A”,将它们串联后接入电路中,如图7-1-6所示,则此电路中允许消耗的最大功率为( ).答案 AA .1.5 WB .3.0 WC .5.0 WD .6.0 W8.(单选)功率为10 W 的发光二极管(LED 灯)的亮度与功率为60 W 的白炽灯相当.根据国家节能战略,2016年前普通白炽灯应被淘汰.假设每户家庭有2只60 W 的白炽灯,均用10 W 的LED 灯替代,估算出全国一年节省的电能最接近( ).答案 BA .8×108 kW·hB .8×1010 kW·hC .8×1011 kW·hD .8×1013 kW·h9.(单选)当电阻两端加上某一稳定电压时,通过该电阻的电荷量为0.3 C ,消耗的电能为0.9 J .为在相同时间内使0.6 C 的电荷量通过该电阻,在其两端需加的电压和消耗的电能分别是( ).答案 DA .3 V 1.8 JB .3 V 3.6 JC .6 V 1.8 JD .6 V 3.6 J10.(多选)如图所示是电阻R 的I -U 图象,图中α=45°,由此得出( ).A .通过电阻的电流与两端电压成正比B .电阻R =0.5 Ω 答案 ADC .因I -U 图象的斜率表示电阻的倒数,故R =1/tan α=1.0 ΩD .在R 两端加上6.0 V 的电压时,每秒通过电阻横截面的电荷量是3.0 C11.(单选)某种材料的导体,其I-U图象如图所示,图象上A点与原点的连线与横轴成α角,A点的切线与横轴成β角.下列说法正确的是().答案 AA.导体的电功率随电压U的增大而增大B.导体的电阻随电压U的增大而增大C.在A点,导体的电阻为tan αD.在A点,导体的电阻为tan β12.(多选)如图所示,图线1表示的导体的电阻为R1,图线2表示的导体的电阻为R2,则下列说法正确的是().答案ACA.R1∶R2=1∶3B.把R1拉长到原来的3倍长后电阻等于R2C.将R1与R2串联后接于电源上,则功率之比P1∶P2=1∶3D.将R1与R2并联后接于电源上,则电流比I1∶I2=1∶313、(单选)在如图电路中,电源电动势为12 V,电源内阻为1.0 Ω,电路中的电阻R0为1.5 Ω,小型直流电动机M的内阻为0.5 Ω.闭合开关S后,电动机转动,电流表的示数为2.0 A.则以下判断中正确的是( ).A.电动机的输出功率为14 WB.电动机两端的电压为7.0 V 答案BC.电动机的发热功率为4.0 WD.电源输出的电功率为24 W14.(多选)如图所示,用输出电压为1.4 V,输电电流为100 mA的充电器对内阻为2 Ω的镍-氢电池充电.下列说法正确的是().答案ABA.电能转化为化学能的功率为0.12 W B.充电器输出的电功率为0.14 WC.充电时,电池消耗的热功率为0.12 W D.充电器把0.14 W的功率储存在电池内15.(单选)一只电饭煲和一台洗衣机并联接在输出电压220 V的交流电源上(其内电阻可忽略不计),均正常工作.用电流表分别测得通过电饭煲的电流是5.0 A,通过洗衣机电动机的电流是0.50 A,下列说法中正确的是().A.电饭煲的电阻为44 Ω,洗衣机电动机线圈的电阻为440 Ω答案CB.电饭煲消耗的电功率为1 555 W,洗衣机电动机消耗的电功率为155.5 WC.1 min内电饭煲消耗的电能为6.6×104 J,洗衣机电动机消耗的电能为6.6×103 JD.电饭煲发热功率是洗衣机电动机发热功率的10倍16、(单选)如图所示,电源电动势E=8 V,内阻为r=0.5 Ω,“3 V,3 W”的灯泡L与电动机M串联接在电=1.5 Ω.下列说源上,灯泡刚好正常发光,电动机刚好正常工作,电动机的线圈电阻R法中正确的是().答案DA.通过电动机的电流为1.6 A B.电源的输出功率是8 WC.电动机消耗的电功率为3 W D.电动机的输出功率为3 W17、有一提升重物的直流电动机,工作时电路如图7-1-4所示,内阻为r=0.6 Ω,R=10 Ω,直流电压为U=160 V,电压表两端的示数为110 V,则通过电动机的电流是多少?电动机的输入功率为多少?电动机在1 h内产生的热量是多少?答案 5 A550 W 5.4×104 J18.如图所示是一提升重物用的直流电动机工作时的电路图.电动机内电阻r=0.8 Ω,电路中另一电阻R=10 Ω,直流电压U=160 V,电压表示数U V=110 V.试求:(1)通过电动机的电流;答案(1)5 A(2)550 W(3)53 kg(2)输入电动机的电功率;(3)若电动机以v=1 m/s匀速竖直向上提升重物,求该重物的质量?(g取10 m/s2)19.四川省“十二五”水利发展规划指出,若按现有供水能力测算,我省供水缺口极大,蓄引提水是目前解决供水问题的重要手段之一.某地要把河水抽高20 m,进入蓄水池,用一台电动机通过传动效率为80%的皮带,带动效率为60%的离心水泵工作.工作电压为380 V,此时输入电动机的电功率为19 kW,电动机的内阻为0.4 Ω.已知水的密度为1×103 kg/m3,重力加速度取10 m/s2.求:(1)电动机内阻消耗的热功率;(2)将蓄水池蓄入864 m3的水需要的时间(不计进、出水口的水流速度).答案(1)1×103 W(2)2×104 s知识点二:闭合电路的欧姆定律、输出功率、效率、电源的U-I图像1.(单选)将一电源电动势为E,内电阻为r的电池与外电路连接,构成一个闭合电路,用R表示外电路电阻,I表示电路的总电流,下列说法正确的是().答案CA.由U外=IR可知,外电压随I的增大而增大B.由U内=Ir可知,电源两端的电压随I的增大而增大C.由U=E-Ir可知,电源输出电压随输出电流I的增大而减小D.由P=IU可知,电源的输出功率P随输出电流I的增大而增大2.(多选)一个T形电路如图7-2-1所示,电路中的电阻R1=10 Ω,R2=120 Ω,R3=40 Ω.另有一测试电源,电动势为100 V,内阻忽略不计.则().答案ACA.当cd端短路时,ab之间的等效电阻是40 ΩB.当ab端短路时,cd之间的等效电阻是40 ΩC.当ab两端接通测试电源时,cd两端的电压为80 VD.当cd两端接通测试电源时,ab两端的电压为80 V3.(单选)图所示的电路中,R1=20 Ω,R2=40 Ω,R3=60 Ω,R4=40 Ω,R5=4 Ω,下面说法中,正确的是().A.若U AB=140 V,C、D端开路,U CD=84 V 答案DB.若U AB=140 V,C、D端开路,U CD=140 VC.若U CD=104 V,A、B端开路,U AB=84 VD.若U CD=104 V,A、B端开路,U AB=60 V4.(多选)如图所示电路中,电源电动势E=12 V,内阻r=2 Ω,R1=4 Ω,R2=6 Ω,R3=3 Ω.若在C、D间连接一个电表或用电器,则有().答案ADA.若在C、D间连一个理想电压表,其读数是6 VB.若在C、D间连一个理想电压表,其读数是8 VC.若在C、D间连一个理想电流表,其读数是2 AD.若在C、D间连一个“6 V,3 W”的小灯泡,则小灯泡的实际功率是1.33 W5、(单选)如图所示,电源电动势E=12 V,内阻r=3 Ω,R0=1 Ω,直流电动机内阻R0′=1 Ω,当调节滑动变阻器R时可使甲电路输出功率最大,调节R2时可使乙电路输出功率最大,且此时电动机刚好正常工作(额定输出功率为P0=2 W),则R1和R2的值分别为().答案BA.2 Ω,2 ΩB.2 Ω,1.5 ΩC.1.5 Ω,1.5 ΩD.1.5 Ω,2 Ω6、(多选)如图所示,直线A为电源的U-I图线,直线B和C分别为电阻R、R2的U-I图线,用该电源分别与R1、R2组成闭合电路时,电源的输出功率分别为P1、P2,电源的效率分别为η1、η2,则().答案BCA.P1>P2B.P1=P2C.η1>η2D.η1<η27.(多选)如图所示为两电源的U -I 图象,则下列说法正确的是( ).答案 ADA .电源①的电动势和内阻均比电源②大B .当外接同样的电阻时,两电源的输出功率可能相等C .当外接同样的电阻时,两电源的效率可能相等D .不论外接多大的相同电阻,电源①的输出功率总比电源②的输出功率大8.(多选)如图,图中直线①表示某电源的路端电压与电流的关系图象,图中曲线②表示该电源的输出功率与电流的关系图象,则下列说法正确的是( ).A .电源的电动势为50 VB .电源的内阻为253 Ω 答案 ACDC .电流为2.5 A 时,外电路的电阻为15 ΩD .输出功率为120 W 时,输出电压是30 V9.(多选)如图所示,直线a 、抛物线b 和曲线c 分别为某一稳恒直流电源在纯电阻电路中的总功率P 、电源内部发热功率Pr 、输出功率P R 随电流I 变化的图象,根据图象可知( ).答案 BDA .电源的电动势为9 V ,内阻为3 ΩB .电源的电动势为3 V ,内阻为1 ΩC .图象中任意电流值对应的P 、P r 、P R 间的关系为P >P r +P RD .电路中的总电阻为2 Ω时,外电阻上消耗的功率最大且为2.25 W10. (多选)如图甲所示,其中R 两端电压u 随通过该电阻的直流电流I 的变化关系如图乙所示,电源电动势为7.0 V(内阻不计),且R1=1 000 Ω(不随温度变化).若改变R 2,使AB 与BC 间的电压相等,这时( ).答案 BCA .R 的阻值为1 000 ΩB .R 的阻值为1 300 ΩC .通过R 的电流为1.5 mAD .通过R 的电流为2.0 mA11、如图所示,已知电源电动势E =5 V ,内阻r =2 Ω,定值电阻R 1=0.5 Ω,滑动变阻器R 2的阻值范围为0~10 Ω. 答案 (1)0 2 W (2)2.5 Ω 2.5 W (3)1.5 Ω(1)当滑动变阻器的阻值为多大时,电阻R 1消耗的功率最大?最大功率是多少?(2)当滑动变阻器的阻值为多大时,滑动变阻器消耗的功率最大?最大功率是多少?(3)当滑动变阻器的阻值为多大时,电源的输出功率最大?最大输出功率是多少?12.(单选)用图示的电路可以测量电阻的阻值.图中R x 是待测电阻,R 0是定值电阻,是灵敏度很高的电流表,MN 是一段均匀的电阻丝.闭合开关,改变滑动头P 的位置,当通过电流表的电流为零时,测得MP =l 1,PN =l 2,则R x 的阻值为( ).答案 C A.l 1l 2R 0 B.l 1l 1+l 2R 0 C.l 2l 1R 0 D.l 2l 1+l 2R 0 13、(多选)图所示,电动势为E 、内阻为r 的电池与定值电阻R 0、滑动变阻器R 串联,已知R 0=r ,滑动变阻器的最大阻值是2r .当滑动变阻器的滑片P 由a 端向b 端滑动时,下列说法中正确的是( ).答案 ACA .电路中的电流变大B .电源的输出功率先变大后变小C .滑动变阻器消耗的功率变小D .定值电阻R 0上消耗的功率先变大后变小14.(多选)直流电路如图,在滑动变阻器的滑片P 向右移动时,电源的( ).答案 ABCA .总功率一定减小B .效率一定增大C .内部损耗功率一定减小D .输出功率一定先增大后减小15.(单选)电源的效率η定义为外电路电阻消耗的功率与电源的总功率之比.在测电源电动势和内阻的实验中得到的实验图线如图所示,图中U 为路端电压,I 为干路电流,a 、b 为图线上的两点,相应状态下电源的效率分别为ηa 、ηb .由图可知ηa 、ηb 的值分别为( ).答案 DA.34、14B.13、23C.12、12D.23、13知识点三:电路的动态分析、电路故障分析、含容电路分析1、(多选)图所示的电路,L 1、L2、L 3是3只小电灯,R 是滑动变阻器,开始时,它的滑片P 位于中点位置.当S 闭合时,3只小电灯都发光.现使滑动变阻器的滑片P 向右移动时,则小电灯L 1、L 2、L 3的变化情况( ). 答案 BCA .L 1变亮B .L 2变亮C .L 3变暗D .L 1、L 2、L 3均变亮2.(单选)如图,E 为内阻不能忽略的电池,R1、R2、R 3为定值电阻,S 0、S 为开关,与分别为电压表与电流表.初始时S 0与S 均闭合,现将S 断开,则( ).答案 BA.的读数变大,的读数变小B.的读数变大,的读数变大C.的读数变小,的读数变小D.的读数变小,的读数变大3.(单选)在输液时,药液有时会从针口流出体外,为了及时发现,设计了一种报警装置,电路如图7-2-5所示.M 是贴在针口处的传感器,接触到药液时其电阻R M 发生变化,导致S 两端电压U 增大,装置发出警报,此时( ).答案 CA .R M 变大,且R 越大,U 增大越明显B .R M 变大,且R 越小,U 增大越明显C .R M 变小,且R 越大,U 增大越明显D .R M 变小,且R 越小,U 增大越明显4.(多选)如图所示电路, 电源电动势为E ,串联的固定电阻为R 2,滑动变阻器的总电阻为R 1,电阻大小关系为R 1=R 2=r ,则在滑动触头从a 端移动到b 端的过程中,下列描述中正确的是( ).答案 ABA .电路中的总电流先减小后增大B .电路的路端电压先增大后减小C .电源的输出功率先增大后减小D .滑动变阻器R 1上消耗的功率先减小后增大5.(多选)如图所示,闭合开关S 后,A 灯与B 灯均发光,当滑动变阻器的滑片P 向左滑动时,以下说法中正确的是( ).答案 ACA .A 灯变亮B .B 灯变亮C .电源的输出功率可能减小D .电源的总功率增大6.(单选)如图所示电路,电源内阻不可忽略.开关S 闭合后,在变阻器R0的滑动端向下滑动的过程中( ).答案 AA .电压表与电流表的示数都减小B .电压表与电流表的示数都增大C .电压表的示数增大,电流表的示数减小D .电压表的示数减小,电流表的示数增大7.(单选)在如图7-2-15所示的电路中,E 为电源,其内阻为r ,L 为小灯泡(其灯丝电阻可视为不变),R 1、R2为定值电阻,R 3为光敏电阻,其阻值大小随所受照射光强度的增大而减小,V 为理想电压表.若将照射R 3的光的强度减弱,则( ). 答案 BA .电压表的示数变大B .小灯泡消耗的功率变小C .通过R 2的电流变小D .电源内阻的电压变大8.(多选)如图所示,四个电表均为理想电表,当滑动变阻器的滑动触头P向左端移动时,下列说法中正确的是().答案BCA.电压表V1的读数减小,电流表A1的读数增大B.电压表V1的读数增大,电流表A1的读数减小的读数减小,电流表A2的读数增大C.电压表VD.电压表V2的读数增大,电流表A2的读数减小9.(多选)在如图所示的电路中,E为电源的电动势,r为电源的内阻,R1、R2为可变电阻.在下列操作中,可以使灯泡L变暗的是().答案ADA.仅使R1的阻值增大B.仅使R1的阻值减小C.仅使R2的阻值增大D.仅使R2的阻值减小10.(多选)如图所示,电源电动势为E,内阻为r,不计电压表和电流表内阻对电路的影响,当电键闭合后,两小灯泡均能发光.在将滑动变阻器的触片逐渐向右滑动的过程中,下列说法正确的是().答案BC A.小灯泡L、L2均变暗B.小灯泡L1变亮,小灯泡L2变暗C.电流表A的读数变小,电压表V的读数变大D.电流表A的读数变大,电压表V的读数变小11.(单选)如图所示电路中,由于某处出现了故障,导致电路中的A、B两灯变亮,C、D两灯变暗,故障的原因可能是().答案 DA.R1短路B.R2断路C.R2短路D.R3短路12.(多选)在如图所示的电路中,电源的电动势E和内阻r恒定,闭合开关S后灯泡能够发光,经过一段时间后灯泡突然变亮,则出现这种现象的原因可能是().答案ABA.电阻R1短路B.电阻R2断路C.电阻R2短路D.电容器C断路13.(单选)如图所示,C为两极板水平放置的平行板电容器,闭合开关S,当滑动变阻器R1、R2的滑片处于各自的中点位置时,悬在电容器C两极板间的带电尘埃P恰好处于静止状态.要使尘埃P向下加速运动,下列方法中可行的是().答案AA.把R2的滑片向左移动B.把R2的滑片向右移动C.把R1的滑片向左移动D.把开关S断开14.(单选)在如图所示的电路中,电源的电动势为E,内阻为r,平行板电容器C的两金属板水平放置,R1和R2为定值电阻,P为滑动变阻器R的滑动触头,G为灵敏电流表,A为理想电流表.开关S闭合后,C的两板间恰好有一质量为m、电荷量为q的油滴处于静止状态.在P向上移动的过程中,下列说法正确的是().答案BA.A表的示数变大B.油滴向上加速运动C.G中有由a→b的电流D.电源的输出功率一定变大15、(多选)在如图所示的电路中,闭合电键S,当滑动变阻器的滑动触头P向下滑动时,四个理想电表的示数都发生变化,电表的示数分别用I、U1、U2和U3表示,电表示数变化量的大小分别用ΔI、ΔU1、ΔU2和ΔU3表示.下列比值正确的是( ) 答案:ACDA.U1/I不变,ΔU1/ΔI不变B.U2/I不变,ΔU2/ΔI变大C.U2/I变大,ΔU2/ΔI不变D.U3/I变大,ΔU3/ΔI不变16、(单选)如图所示电路中,闭合电键S,当滑动变阻器的滑动触头P从最高端向下滑动时()A.电压表V读数先变大后变小,电流表A读数变大答案:AB.电压表V读数先变小后变大,电流表A读数变小C.电压表V读数先变大后变小,电流表A读数先变小后变大D.电压表V读数先变小后变大,电流表A读数先变大后变小。
07 第七章 均相反应动力学基础
二、复合反应的速率方程式
1. 平行反应
k1 A B P 主反应 k2 A B S 副反应
a1 b1 rP k1cA cB a2 b2 rS k2cA cB
rP k1 a1 a2 b1 b2 cA cB rS k2
ρ :选择率
(1)ρ增大,反应的选择性增大
2. cA,0 ≠ cB,0 cA ≠ cB
rA=kcAcB
cA,0xA = cB,0xB
rA k (cA,0 cA,0 xA )(cB,0 cB,0 xB ) kcA,0 (1 xA )(cB,0 cA,0 xA )
cB,0 令: M rA kcA,0 2 (1 xA )( M xA ) cA,0
ln ln 1 xB cA,0 ( M 1)kt 1 xA 1 xB (cB,0 cA,0 )kt 1 xA
p11,例7-1
三、一级可逆反应
垐 1垎 A噲 垐P k
2
k
A的反应速率为正、逆反应速率的代数和:rA = k1cA-k2cP
rA k1cA k2cP ( k1 k2 )cA,0 ( xA,e xA )
(1)φ(c) 用幂级数的形式表示: (c ) cAcB (2)α,β为反应物A,B的反应级数 (3) α+β= n称为反应总级数。反应级数越高,浓度的变化对反应 速率的影响越显著 (4)基元反应,α,β与计量系数相等 (5)非基元反应,α,β由实验测定,可为整数或分数
四、反应速率的温度效应f(T) (p7)
nA = nA,0(1 - xA,0)
cA = cA,0(1 - xA,0) 1 dnA 1 nA,0dxA 用转化率表示反应速率:rA V dt V dt nA,0 xA 用转化率表示反应进度: νA
visual basic 2012 大学教程(第7章下)
7.13. Searching a Sorted Array with Array Method BinarySearchLinear searches work well for small or unsorted arrays, but, for large unsorted arrays, linear searching is inefficient. If the array is sorted, the high-speed binary search technique can be used with class Array’s BinarySearch method. Our app that demonstrates method BinarySearch is nearly identical to the one in Fig. 7.14, so we show only the differences here. The complete code is located in the Fig07_15 folder with this chapt er’s examples. The sample outputs are shown in Fig. 7.15. The GUI for this app is identical to the one in Fig. 7.13.a) Creating random values to searchb) Searching for a value that is in the arrayc) Searching for a value that is not in the arrayFig. 7.15. Binary search of an array.As in Fig. 7.14, the user clicks the Create Data Button to generate random values. For method BinarySearch to perform correctly, the array must have been sorted. Method createDataButton_Click uses the following call to Array method Sort before displaying the values in the dataListBox:Array.Sort(searchData) ' sort array to enable binary searchingIn method searchButton_Click, we replaced lines 40–48 of Fig. 7.14 withDim index As Integer = Array.BinarySearch(searchData, searchKey)which uses Array method BinarySearch to perform a binary search for a key value. The method receives two arguments—the sorted integer array searchData (the array to search) and integer searchKey (the search key). If the value is found, method BinarySearch returns the index of the search key; otherwise, it returns a negative number.7.14. Rectangular ArraysThe arrays we’ve studied so far are one-dimensional arrays—they contain a list of values and use only one index to access each element. In this section, we introduce multidimensional arrays, which require two or more indices to identify particular elements. We concentrate on two-dimensional arrays—also known as rectangular arrays—which are often used to represent tables of values consisting of data arranged in rows and columns (Fig. 7.16). Each row is the same size, and each column is the same size (hence the term ―rectangular‖). To identify a particular table element, we specify two indices—by convention, the first identifies the element’s row, the second the element’s column. Figure 7.16 illustrates a rectangular array, a, containing three rows and four columns. A rectangular array with m rows and n columns is called an m-by-n array; the array in Fig. 7.16 is a 3-by-4 array.Fig. 7.16. Two-dimensional array with three rows and four columns.Every element in array a is identified in Fig. 7.16 by an element name of the form a(i, j), where a is the name of the array and i and j are the indices that uniquely identify the row and column, respectively, of each element in array a. Array indices are zero based, so the names of the elements in row 0 all have a first index of 0; the names of the elements in column 3 all have a second index of 3.Declaring and Initializing Rectangular ArraysA two-dimensional rectangular array numbers with two rows and two columns can be declared and initialized withClick here to view code imageDim numbers(1, 1) As Integer' numbers in a 2 by 2 arraynumbers(0, 0) = 1' leftmost element in row 0numbers(0, 1) = 2' rightmost element in row 0numbers(1, 0) = 3' leftmost element in row 1numbers(1, 1) = 4' rightmost element in row 1Alternatively, the initialization can be written on one line, as shown with and without local type inference below:Click here to view code imageDim numbers = {{1, 2}, {3, 4}}Dim numbers(,) As Integer = {{1, 2}, {3, 4}}In the second declaration, the comma in (,) indicates that numbers is a two-dimensional array. The values are grouped by row in braces, with 1 and 2 initializing numbers(0, 0) and numbers(0, 1), respectively, and 3 and 4 initializing numbers(1, 0) and numbers(1, 1), respectively. The compiler determines the number of rows by counting the number of sub-initializer lists (represented by the sets of data in curly braces) in the main initializer list. Then the compiler determines the number of columns in each row by counting thenumber of initializer values in the subinitializer list for that row. The subinitializer lists must have the same number of elements for each row.Manipulating a Rectangular ArrayThe app in Fig. 7.17 initializes rectangular array values and uses nested For...Next loops to traverse the array (that is, to manipulate every array element). The contents of the array are displayed in outputTextBox.Click here to view code image1' Fig. 7.17: RectangularArray.vb2' Initializing and displaying a rectangular array.3Public Class RectangularArray4' display the contents of a rectangular array5Private Sub RectangularArray_Load(sender As Object,6 e As EventArgs) Handles MyBase.Load78Dim values(,) As Integer = {{1, 2, 3}, {4, 5, 6}}910' output elements of the values array11For row = 0To values.GetUpperBound(0)12For column = 0To values.GetUpperBound(1)13 outputTextBox.AppendText(values(row, column) & vbTab)14Next column1516 outputTextBox.AppendText(vbCrLf)17Next row18End Sub' RectangularArray_Load19End Class' RectangularArrayFig. 7.17. Initializing and displaying a rectangular array.The app declares rectangular array values (line 8) and uses an initializer list to determine the number of rows, number of columns and initial values of the array’s elements. The initializer list contains two sublists. The number of sublists determines the number of rows in the array. The compiler uses the number of elements in the first sublistto determine the number of columns in each row. All subsequent sublists must have the same number of initializers as the first sublist; otherwise, a compilation error occurs. The first sublist initializes row 0 of the array to the values 1, 2 and 3; the second sublist initializes row 1 of the array to the values 4, 5 and 6.The nested For...Next statements in lines 11–17 display the elements of rectangular array values. The outer For...Next statement traverses the rows; the inner For...Next statement traverses the columns within a row. Each For...Next statement calls method GetUpperBound to obtain the upper bound of the dimension it traverses. GetUpperBound with the argument 0 (line 11) returns the number of rows. GetUpperBound with the argument 1 (line 12) returns the number of columns in each row.7.15. Case Study: Maintaining Grades Using a Rectangular ArrayWe now present a substantial case study using rectangular arrays. Consider the following problem statement:An instructor gives three tests to a class of 10 students. The grades on thesetests are integers in the range from 0 to 100. The instructor has asked you todevelo p an app to keep track of each student’s average and the class average.The instructor has also asked that there be a choice to view the grades as eithernumbers or letters. Letter grades should be calculated according to thefollowing grading system:Th e app should allow a user to input each student’s three test grades, thencompute each student’s average and the class average for all grades entered sofar. The app should display numeric grades by default. It should also display agrade distribution chart showing how many of the numeric grades fall into theranges 0–9, 10–19, ... 90–99 and 100.We’ll use a rectangular array with 10 rows and three columns to store the student grades. This app uses most of the programming concepts you’ve learned up to now i n this book. Figure 7.19 shows sample outputs for the Grade Report app.a) Grade Report window after the user has enter ed the first student’s grades and isabout to submit them.b) Grade Report window after five students’ grades have been entered.c) Grade Report window after the user has entered all 10 students’ grades.d) Grade Report window after the user has ente red all 10 students’ grades andclicked the Letter RadioButton to display letter grades.Fig. 7.18. Sample outputs for the Grade Report app.GUI for the Grade Report AppFigure 7.19 presents the GUI for the Grade Report app. In this app, we introduce RadioButton controls to allow the user to select between displaying grades in numeric or letter format. A RadioButton is a small white circle that either is blank or contains a small dot. When a RadioButton is selected, a dot appears in the circle. A RadioButton is known as a state button because it can be in only the ―on‖ (True) state or the ―off‖ (False) state. You’ve previously used the CheckBox state buttons (introduced in Chapter 5).Fig. 7.19. GUI for the Grade Report appRadioButton s are similar to CheckBox es, but RadioButton s normally appear as a group—only one RadioButton in the group can be selected at a time. Like car radio preset buttons, which can select only one station at a time, RadioButton s represent a setof options in which only one option can be selected at a time—also known as mutually exclusive options. By default, all RadioButton s become part of the same group. To separate them into several groups, each group must be in a different container (typically a GroupBox).A RadioButton’s Boolean Checked property indicates whether the RadioButton is checked (contains a small dot) or unchecked (blank). If the RadioButton is checked, the Checked property returns True; otherwise, it returns False.A RadioButton also generates an event when its checked state changes. Event CheckedChanged occurs when a RadioButton is either selected or deselected. We use this event to switch between the numeric grade and letter grade views in the gradesListBox.Grade Report AppOver the next several figures we’ll discuss the Grade Report app’s code. Due to the size of this app, we’ve split the source code into several small figures.Figure 7.20 declares class GradeReport’s instance variables and Load event handler. The rectangular array grades (line 4) has 10 rows and 3 columns to store the grades for 10 students and three exams per student. Variable studentCount (line 5) keeps track of the number of students processed so far. After 10 students are processed, the app disables the input TextBox es and Submit Button. The GradeReport_Load event handler (lines 8–13) displays the column heads in the gradesListBox.Click here to view code image1' Fig. 7.20: GradeReport.vb2' Grade report using a rectangular array.3Public Class GradeReport4Dim grades(9, 2) As Integer' stores 10 students' grades on 3 tests5Dim studentCount As Integer = 0' number of students entered67' display heading in gradeListBox8Private Sub GradeReport_Load(sender As Object,9 e As EventArgs) Handles MyBase.Load10' headings row for gradesListBox11 gradesListBox.Items.Add(vbTab & vbTab & "Test 1" & vbTab &12"Test 2" & vbTab & "Test 3" & vbTab & "Average")13End Sub14Fig. 7.20. Grade Report app: Instance variables and method GradeReport_Load. Method submitButton_ClickWhen the user enters three grades, then presses the Submit Button, method submit-Button_Click (Fig. 7.21) processes the three grades and displays the current class average and a bar chart showing the grade distribution for all grades entered so far. Lines 20–22 get the three grades from the TextBox es and assign them to the elements of the grades array in row studentCount. Lines 25–37 build a String representing the current student’s grades and average. Lines 28–37 loop through the current row of the grades array and append either a letter grade or numeric grade, based on whether the letterRadioButton’s Checked property is True. If so, line 32 calls method LetterGrade to get the letter representation of the numeric grade. Otherwise, line 35 appends the numeric grade. Line 40 calls method CalculateStudentAverage to obtain the current student’s average for the three exams.Click here to view code image15' process one student's grades16Private Sub submitButton_Click(sender As Object,17 e As EventArgs) Handles submitButton.Click1819' retrieve the student's grades20 grades(studentCount, 0) = Convert.ToInt32(test1TextBox.Text)21 grades(studentCount, 1) = Convert.ToInt32(test2TextBox.Text)22 grades(studentCount, 2) = Convert.ToInt32(test3TextBox.Text)2324' begin creating String containing the student's grades and average 25Dim output As String = "Student " & studentCount & vbTab2627' append each test grade to the output28For column = 0To grades.GetUpperBound(1)29' if the Letter RadioButton is checked30If letterRadioButton.Checked = True Then31' append letter grade to the output32 output &= vbTab & LetterGrade(grades(studentCount, column))33Else34' append number grade to the output35 output &= vbTab & grades(studentCount, column)36End If37Next3839' append the student's test average to the output40 output &= vbTab & CalculateStudentAverage(studentCount)4142 gradesListBox.Items.Add(output) ' add output to the ListBox43 studentCount += 1' update number of students entered44 averageLabel.Text = CalculateClassAverage() ' display class average45 DisplayBarChart() ' display the current grade distribution4647' clear the input TextBoxes and set focus to first TextBox48 test1TextBox.Clear()49 test2TextBox.Clear()50 test3TextBox.Clear()51 test1TextBox.Focus()5253' limit number of students54If studentCount = grades.GetUpperBound(0) + 1Then55 inputGroupBox.Enabled = False' disable GroupBox's controls56End If57End Sub' submitButton_Click58Fig. 7.21. Grade Report app: Method submitButton_Click.Line 42 displays the information for the current student. Line 43 updates the student count. Line 44 and 45 call the methods CalculateClassAverage and DisplayBarChart to determine the current class average and to display a grade distribution chart based on the grades that have been entered so far. Lines 48–51 prepare the user interface to receive the next student’s grades by clearing the TextBox es and giving the focus to the test1-TextBox. Finally, lines 54–56 check whether grades have been entered for 10 students. If so, line 55 sets the inputGradeGroupBox’s Enabled property to False, which disables all the controls in the GroupBox, preventing the user from entering more grades.Method RadioButton_CheckChanged: Handling Multiple Events with One Event HandlerAt any time, the user can select the Numeric or Letter RadioButton to change how the grades are displayed in the gradesListBox. When the selected RadioButton changes, method RadioButton_CheckedChanged (Fig. 7.22) is called. In this example, we handle both RadioButton’s CheckedChanged events with the same event handler. To do this, double click the Numeric RadioButton, then rename the event handler to RadioButton_Checked-Changed. Next, add letterRadioButton.CheckedChanged to the Handles clause of the event handler (lines 62–63). Now this method is called when the CheckChanged event occurs for either RadioButton. In this case, as long as at least one student has been processed, line 67 calls method DisplayGrades to update the presentation of the grades in gradesListBox.Click here to view code image59' handles Numeric and Letter RadioButtons' CheckChanged events60Private Sub RadioButton_CheckedChanged(sender As Object,61 e As EventArgs) _62Handles numericRadioButton.CheckedChanged,63 letterRadioButton.CheckedChanged6465' if there are grades to display, call DisplayClassGrades66If studentCount > 0Then67 DisplayClassGrades()68End If69End Sub' RadioButton_CheckedChanged70Fig. 7.22. Grade Report app: Method RadioButton_CheckedChanged. Method CalculateStudentAverageMethod CalculateStudentAverage (Fig. 7.23) processes one row of the grades array to determine the corresponding s tudent’s average. The method returns a String containing either the letter grade for that student’s average or the numeric value, depending on whether the letterRadioButton’s Checked property is True.Click here to view code image71' calculates a student's test average72Function CalculateStudentAverage(row As Integer) As String73Dim gradeTotal As Integer = 0' student's total grade7475' sum the grades for the student76For column = 0To grades.GetUpperBound(1)77 gradeTotal += grades(row, column)78Next7980Dim studentAverage As String = String.Empty' output string8182' calculate the student's test average83If letterRadioButton.Checked = True Then84 studentAverage =85 LetterGrade(gradeTotal / (grades.GetUpperBound(1) + 1))86Else87 studentAverage = String.Format("{0:F}",88 (gradeTotal / (grades.GetUpperBound(1) + 1)))89End If9091Return studentAverage ' return the student's average92End Function' CalculateStudentAverage93Fig. 7.23. Grade Report app: Method CalculateStudentAverage. Method CalculateClassAverageMethod CalculateClassAverage (Fig. 7.24) processes the grades array to determine the class average for all the grades entered so far. The method returns a String containing either the letter grade for the class average or the numeric value, depending on whether the letterRadioButton’s Checked property is True.Click here to view code image94' calculates the class average95Function CalculateClassAverage() As String96Dim classTotal As Integer = 0' class's total grade9798' loop through all rows that currently contain grades99For row = 0To studentCount - 1100' loop through all columns101For column = 0To grades.GetUpperBound(1)102 classTotal += grades(row, column) ' add grade to total103Next column104Next row105106Dim classAverage As String = String.Empty' output string107108' if the Letter RadioButton is checked, return letter grade109If letterRadioButton.Checked = True Then110 classAverage = LetterGrade(classTotal /111 (studentCount * (grades.GetUpperBound(1) + 1)))112Else' return numeric grade113 classAverage = String.Format("{0:F}", (classTotal /114 (studentCount * (grades.GetUpperBound(1) + 1))))115End If116117Return classAverage ' return the class average118End Function' CalculateClassAverage119Fig. 7.24. Grade Report app: Method CalculateClassAverage.Method LetterGradeMethod LetterGrade (Fig. 7.25) receives a numeric grade and returns the corresponding letter grade as a String.Click here to view code image120' determines a letter grade corresponding to a numeric grade121Function LetterGrade(grade As Double) As String122Dim output As String' the letter grade to return123124' determine the correct letter grade125Select Case grade126Case Is >= 90127 output = "A"128Case Is >= 80129 output = "B"130Case Is >= 70131 output = "C"132Case Is >= 60133 output = "D"134Case Else135 output = "F"136End Select137138Return output ' return the letter grade139End Function' LetterGrade140Fig. 7.25. Grade Report app: Method LetterGrade.Method DisplayClassGradesMethod DisplayClassGrades (Fig. 7.26) displays the student grades and averages in the gradesListBox. Line 143 clears the ListBox’s current contents and lines 146–147 display the column heads in the ListBox. Lines 150–169 processes the grades array to display all the grades entered so far, displaying letter grades if letterRadioButton’s Checked property is True. Line 172 updates the class average and displays the result in averageLabel.Click here to view code image141' display the grades for all students entered142Sub DisplayClassGrades()143 gradesListBox.Items.Clear() ' clear the ListBox144145' add the header to the ListBox146 gradesListBox.Items.Add(vbTab & vbTab & "Test 1" & vbTab &147"Test 2" & vbTab & "Test 3" & vbTab & "Average")148149' loop through all the rows150For row = 0To studentCount - 1151Dim output As String = "Student " & row & vbTab152153' loop through all the columns154For column = 0To grades.GetUpperBound(1)155If letterRadioButton.Checked = True Then156' add letter grade to output string157 output &= vbTab & LetterGrade(grades(row, column))158Else159' add number grade to output string160 output &= vbTab & (grades(row, column))161End If162Next column163164' add the student's average to the output165 output &= vbTab & CalculateStudentAverage(row)166167' add the output to the ListBox168 gradesListBox.Items.Add(output)169Next row170171' update the class average172 averageLabel.Text = CalculateClassAverage()173End Sub' DisplayClassGrades174Fig. 7.26. Grade Report app: Method DisplayClassGrades.Method DisplayBarChartMany apps present data to users in a visual or graphical format. For example, numeric values are often displayed as bars in a bar chart. In such a chart, longer bars represent proportionally larger numeric values (see Fig. 7.18). Method DisplayBarChart (Fig. 7.27) displays a graphical summary of the grade distribution by creating a bar chart that shows how many numeric grades fall into each of the ranges 0–9, 10–19, ... 90–99 and 100. Click here to view code image175' display a bar chart of the grade distribution176Sub DisplayBarChart()177 barChartListBox.Items.Clear() ' remove current items178179' stores frequency of grades in each range of 10 grades180Dim frequency(10) As Integer181182' for each grade, increment the appropriate frequency183For row = 0To studentCount - 1184For column = 0To grades.GetUpperBound(1)185 frequency(grades(row, column) \ 10) += 1186Next column187Next row188189' for each grade frequency, display bar of asterisks190For count = 0 To frequency.GetUpperBound(0)191Dim bar As String' stores the label and bar192193' create bar label ( "00-09: ", ..., "90-99: ", "100: " )194If count = 10Then195 bar = String.Format("{0, 5:D}: ", 100)196Else197 bar = String.Format("{0, 2:D2}-{1, 2:D2}: ",198 count * 10, count * 10 + 9)199End If200201' append bar of asterisks202For stars = 1To frequency(count)203 bar &= ("*")204Next205206 barChartListBox.Items.Add(bar) ' display bar207Next count208End Sub' DisplayBarChart209End Class' GradeReportFig. 7.27. Grade Report app: Method DisplayBarChart.Lines 180–187 summarize the number of grades in each range using the elements of the 11-element array frequency. Next, lines 190–207 build a String containing the range of values represented by the current bar (lines 194–199) and a bar of asterisks representing the number of grades that fall into that range (lines 202–204). Line 206 then displays this String in the barCharListBox. The format String s in lines 195 and 197 use field widths to control the number of characters in which each value is output. The format specifier {0, 5:D} (line 195) indicates that an integer value will be displayed in a field of 5 characters right justified by default. So, if the number contains fewer than 5 characters, it will be preceded by an appropriate number of spaces. The format specifier {0, 2:D2} (line 197) indicates that an integer will be displayed in a field of 2 characters. The D2 forces the number to use two character positions—single digit numbers are preceded by a leading 0.7.16. Resizing an Array with the ReDim StatementAn array’s size cannot be changed, so a new array must b e created if you need to change the size of an existing array. The ReDim statement ―resizes‖ an array at execution time by creating a new array and assigning it to the specified array variable. The old array’s memory is eventually reclaimed by the runtime. Figure 7.28 demonstrates the ReDim statement.Click here to view code image1' Fig. 7.28: ReDimTest.vb2' Resize an array using the ReDim statement.3Public Class ReDimTest4' demonstrate ReDim5Private Sub ReDimTest_Load(sender As Object,6 e As EventArgs) Handles MyBase.Load78' create and initialize two 5-element arrays9Dim values1() As Integer = {1, 2, 3, 4, 5}10Dim values2() As Integer = {1, 2, 3, 4, 5}1112' display array length and the elements in array13 outputTextBox.AppendText(14"The original array has " & values1.Length & " elements: ")15 DisplayArray(values1)1617' change the size of the array without the Preserve keyword18ReDim values1(6)1920' display new array length and the elements in array21 outputTextBox.AppendText("New array (without Preserve) has " &22 values1.Length & " elements: ")23 DisplayArray(values1)2425' change the size of the array with the Preserve keyword26ReDim Preserve values2(6)27 values2(6) = 7' assign 7 to array element 62829' display new array length and the elements in array30 outputTextBox.AppendText("New array (with Preserve) has " &31 values2.Length & " elements: ")32 DisplayArray(values2)33End Sub3435' display array elements36Sub DisplayArray(array() As Integer)37For Each number In array38 outputTextBox.AppendText(number & " ")39Next4041 outputTextBox.AppendText(vbCrLf)42End Sub' DisplayArray43End Class' ReDimTestFig. 7.28. Resize an array using the ReDim statement.Line 9 creates and initializes a five-element array values1. Line 10 creates a second array named values2 containing the same data. Lines 13–15 display the size and elements of values1. Line 18 uses a ReDim statement to change the upper bound of values1 to 6, so that the array now contains seven elements. The ReDim statement contains keyword ReDim, followed by the name of the array to be "resized" and the new upper bound in parentheses. Lines 21–23 then display the size and elements of values1 again. The output of Fig. 7.28 shows that after the ReDim statement executes, the size of values1 is changed to 7 and the value of each element is reinitialized to the default value of the type of the array element (that is, 0 for Integer s). To save the original data stored in an array, follow the ReDim keyword with the optional Preserve keyword. Line 26 uses Preserve in the ReDim statement to indicate that the existing array elements are to be preserved in the now larger array after the array is resized. If the new array is smaller than the original array, the existing elements that are outside the bounds of the new array are discarded. If the new array is larger than the original array, all the existing elements are preserved in the now larger array, and the extra elements are initialized to the default value of the type of the array element. For example, after line 26 executes, the value of values2(5) is 0. Line 27 assigns the value 7 to values2(6), so that the now larger array values2 contains elements 1, 2, 3, 4, 5, 0 and 7. Lines 30–32 display the size and elements of values2.7.17. Wrap-UpThis chapter began our discussion of data structures, using arrays to store data in and retrieve data from lists and tables of values. We demonstrated how to declare an array, initialize an array and refer to individual elements of an array. We showed how to pass arrays to methods. We discussed how to use the For Each...Next statement to iterate。
第07章存储过程和触发器
山东工商学院
陈章良
7.1.2 用户存储过程的创建与执行
(2)存储过程的执行 语 法 格 式
[ EXEC [ UTE ] ] { [ @return_status = ] { procedure_name [ ;number ] | @procedure_name_var } [ [ @parameter = ] { value | @variable [ OUTPUT ] | [ DEFAULT ] } [ ,...n ] [ WITH RECOMPILE ] }
山东工商学院
陈章良
7.1.4 用户存储过程的删除
语法格式
DROP PROCEDURE { procedure } [ ,...n ]
【例7.10】删除 PXSCJ数据库中的student_info1 存储过程。 USE PXSCJ GO DROP PROCEDURE student_info1
山东工商学院
CREATE PROCEDURE student_info AS SELECT a.xh,xm,kcm,cj,xf FROM XSB a JOIN CJB b ON a.xh=b.xh JOIN KCB t ON b.kch= t.kch GO
山东工商学院
陈章良
7.1.2 用户存储过程的创建与执行
3) 使用带OUTPUT参数的存储过程
山东工商学院
陈章良
7.1.2 用户存储过程的创建与执行
(3)举例 1) 设计简单的存储过程
【例7.1】从XSCJ USE PXSCJ 数据库的三个表中查 /*检查是否已存在同名的存储过程,若有,删除*/ 询,返回学生学号、 IF EXISTS (SELECT name FROM sysobjects WHERE name = 'student_info' AND type='P') 姓名、课程名、成绩、 DROP PROCEDURE student_info 学分。该存储过程不 GO 使用任何参数。 /*创建存储过程*/
食品化学07第七章维生素与矿物质剖析
维生素
脂溶性维生素:VA、VD、VE和VK 水溶性维生素:B族维生素和VC
4
第一节 概 述
Introduction
辅酶或辅酶前体:如烟酸,叶酸等
维
维生素的功能 抗氧化剂:VE,VC
生
遗传调节因子:VA,VD
素 与
某些特殊功能: VA-视觉功能
矿
VC-血管脆性
物
质
的
功
能
矿物质的功能
生理功能
对食品质量的影响
一、维生素含量的内在变化 2 不同组织部位
植物不同组织部位维生素含量有一定的差异。一般而言,维生素含 量从高到低依次为叶片>果实、茎>根;对于水果那么表皮维生素含量最 高而核中最低。
8
第二节 食品中维生素损失的常见原因
Main Facts of Losing Vitamins in Food
一、维生素含量的内在变化
二、收获后食品中维生素含量的变化
食品中维生素含量的变化是从收获时开场的。 动植物食品原料采后或宰后,其体内的变化以分解代谢为主。由于酶 的作用使某些维生素的存在形式发生了变化,例如从辅酶状态转变为游离 态。 脂肪氧合酶和维生素C氧化酶的作用直接导致维生素的损失,例如豌 豆从收获、运输到加工厂30min后维生素C含量有所降低;新鲜蔬菜在室 温贮存24h后维生素C的含量下降1/3以上。因此,加工时应尽可能选用新 鲜原料或将原料及时冷藏处理以减少维生素的损失。
总之,冷冻对食品中维生素的影响通常较小,但水溶性维 生素由于冻前的烫漂或肉类解冻时汁液的流失大约损失10%~ 14%。
17
表5-10 蔬菜冻藏期间维生素C的损失
食品
芦笋 青豆 青豌豆 菜豆 嫩茎花椰菜 花椰菜 菠菜
VB教案(1-3章)省公开课一等奖全国示范课微课金奖PPT课件
Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim aa As String * 1
aa = Chr$(KeyAscii)
' 将ASCII码转换成字符
Select Case aa
Case "A" To "Z"
'大写转换成小写
aa = Chr$(KeyAscii + 32)
有关属性设置
Name Form1
Caption 颜色、对齐、MousePointer=99,MouseIcon=Key04.ico 鼠标属性例
Label1 Label2 Label3 Label4 Label5
左对齐 居中 自动 背景白 前景红
Alignment=0, BorderStyle =1 Alignment=1,BorderStyle =1 AutoSize=True, WordWarp=False, BorderStyle =1 BackColor= &H00FFFFFF&, BorderStyle =0 ForeColor= &H000000FF&, BorderStyle =0
23第23页
窗体和基本控件
一、通用属性
1. Name名称属性 创建对象名称,有默认名。在程序中,控件名是作为对象标识而引用, 不会显示在窗体上。
2. Caption标题属性 该属性决定了控件上显示内容。
3. Height、width、top和left属性
Left
Top Width
Heig ht
第24页
• KeyPress(KeyAscii As Integer):同上,并可返回一个KeyAscii参数 即所按键值存放在参数KeyAscii中。 比如:对回车判断 KeyAscii=13 • LostFocus:当控件失去焦点时发生。 • GotFocus:当控件取得焦点时发生。 惯用方法
最新VB教程 07 第七章
授课教师:赵海燕 2010年10--12月
第7章 数组与自定义数据类型
2
数组 7.1 数组概述
数组是变量的扩展,一个数组可以存储多个值,通过数组名和下
标对这些值进行存取。 1.数组的优点
与变量相比,数组有以下优点:
(1)数组能够保存多个值; (2)数组可与循环语句配合实现复杂算法; (3)数组可作通用过程的参数,传递大量的值; (4)数组可作函数过程的返回值,可返回大量的值; (5)数组常用来表示与一维、二维、三维空间分布相关的数据,非常 直观; (5)动态数组可根据需要开辟内存空间,优化程序、提高效率。
打开【例7.2】
14
7.3 动态数组
当在编程时不能预料应该为数组定义多少个元素时,可以使用Visual Basic提供的动态数组。动态数组的维数和下标上下界可以在程序运行
过程中改变。
1, 定义动态数组
定义动态数组的的语法结构与定义常规数组相似,只是括号是空
的: Public|Private|Dim|Static动态数组名( )[As数据类型名] 定义语句确定了动态数组的名称、作用域和数据类型。在使用
10
多维数组
多维数组是指三维或三维以上的数组,是在一维和二维概念上的扩展。多维数 组的定义、元素的访问方式与一维和二维数组类似。 【例】下面定义的是2个多维数组。 Dim a(3,3,4) As Integer ' 3维数组 Dim b(1 To 10,-4 To 5, 10,20) As Single ' 4维数组
m为下标下界,n为下标上界。m和n必须为整型常量,可以
是负值,并要求m≤n。
5
(2)只指定下标上界,由Option Base语句指定下标下界: Dima(n)As... 在模块“代码”窗口顶部的声明段中使用以下语句定义下标下界是0或 1: Option Base0|1 使用“0”时,上界n必须是非负整数常量,使用“1”时,上界n必须是 正整数常量。如果没使用Option Base语句,默认为0。
07章2_可逆电池
又因为电动势的测量精确度高,所以由此计算 的热力学函数的变化值远较直接量热法测得准确。 因而在热力学研究中,对于可安排成电池的化 学反应,总是通过测量E和(∂E/∂T)p以求得△rGm , △rHm ,△rSm。
上一内容 下一内容 回主目录 返回
2013-1-2
(-) H2(p)→2H+(aH+)+2e(+) Cl2(p)+2e-→2Cl-(aCl-) →2HCl(a)(2)
净反应:H2(p)+Cl2(p)→2H+(aH+)+ 2Cl-(aCl-)(1)
能斯特方程:
E1 E
$
RT zF
ln
aH aCl
2
2
aH aCl
2
2
aB a a a v v m a m
RT RT vB E ln( aB )平 ln K B zF zF
G zE F $ G RT ln K
$ r m $ r m $
$ $
RT $ E ln K zF
$
$ $
$ r Gm 将两者从数值上联系在 处于平衡态,只是
E 与 K 所处的状态不同, 处于标准态, E K
v v v
返回
2013-1-2
上一内容
下一内容
回主目录
E与a(活度)的关系
(1)
a a
2 H
2 Cl
aH aCl
2
a m m
一起。
上一内容 下一内容 回主目录 返回
2013-1-2
E , rGm 和 K $ 与电池反应的关系
07 第七章 质量和密度 (综合练习题)
质量和密度练习题一、填空:1、物体的质量不随物体的____________________________的改变而改变,所以说质量是物体本身的一种_______。
2、量筒和量杯是测量_____________的工具。
3、用已调节好托盘天平称某物体质量。
指针位于分度盘中央时,右盘内砝码及游码的位置如图所示,则物体的质量是________。
4、一个容器的质量为0.2kg,装满水时总质量是0。
7kg,装满某液体时的总质量是0.6kg,这个容器的容积是________,此种液体的密度是________,这个容器可装水银________g.(水银的密度为13.6×103kg/m3)5、一定质量冰的体积跟它完全融化成水的体积之比是________。
(ρ冰=0.9×103千克/米3)6、A、B、C、完全相同的容器,分别装相同质量的水,将质量相同的实心铅球、铁球、铝球、分别浸没三个容器中(水并未溢出),水面上升多的是容器________。
(ρ铅>ρ铁>ρ铝)7、天平的类型有_____________________。
二、单项选择题:1、一袋奶粉的质量接近:()A、5克;B、50克;C、500克;D、5000克。
2、甲、乙两个实心球,甲球质量是乙的1/4,甲球的体积是乙的二倍,那么,甲、乙两球密度之比是:()A、1:2;B、2:1;C、1:8;D、8:1。
3、关于物质的密度,下列说法正确的是:()A、某种物质的密度是这种物质单位质量的体积;B、将一杯水等分成两杯,则每个杯中水的密度都为原来的1/2;C、密度是物质本身的一种特性;D、据可知:ρ与m成正比;ρ与V成反比。
4、一个只能装600克水的瓶子,若用来装煤油,则瓶内煤油的质量是:()(ρ煤油=0。
8×103千克/米3)A、小于600克;B、等于600克;C、大于600克;D、无法判断.5、一个同学拿着一个桔子,这个桔子的质量大约是:()A、7千克;B、70克;C、70毫克;D、无法估计.6、质量相同的木块和铁块相比较:()A、木块的体积较大,所以木块所含的物质较多;B、铁块较重,所以铁块所含的物质较多;C、木块和铁块质量相同,所含物质多少是一样的;D、无法比较其物质含量的多少。
分析化学第07章练习题
复习提纲:第七章氧化还原滴定法1. 氧化还原反应平衡氧化还原电对(可逆、不可逆;对称、不对称)、氧化还原半反应及氧化反应的本质(掌握)电极电位、标准电极电位和条件电极电位的定义及关系、Nernst方程(掌握)决定条件电极电位的因素:离子强度,配位、沉淀等副反应和溶液酸度(掌握课件例子)氧化还原反应进行的方向(会判断,并且介质条件改变可能会导致氧化还原反应的方向及完成度发生改变);氧化还原反应的程度即条件平衡常数的计算公式(掌握);反应完成度≥99.9%时对两电对∆ϕθ'的要求(既要记住,又要会计算)2. 反应速率及影响因素要清楚两电对∆ϕθ'的大小对反应速度没有明确影响;温度和浓度升高,反应速度升高;催化剂的影响和诱导反应记住课件的例子3. 氧化还原滴定曲线滴定曲线的横纵坐标;sp时及前、后平衡电位的计算(掌握);关于滴定突跃的几点讨论(掌握);指示剂:自身指示剂、专属指示剂和氧化还原指示剂(了解)氧化还原指示剂的原理、理论变色点和变色范围(掌握)4. 氧化还原的预处理预处理的必要性及预处理剂的选取原则(了解);课件中的例子(掌握)5. 氧化还原滴定法:能熟练运用等电子规则处理氧化还原反应的计算题高锰酸钾法:高锰酸钾氧化能力及还原产物与pH的关系(掌握);高锰酸钾标准溶液的配制与标定方法及注意事项(掌握);高锰酸钾测铁、过氧化氢、MnO2等物质反应式及注意事项(掌握)重铬酸钾法:重铬酸钾的特点及其测定铁(有汞法和无汞法)的操作注意事项(掌握);化学耗氧量的定义及计算(掌握)。
碘量法:直接碘量法和间接碘量法的原理及碘量法指示剂(掌握);碘和硫代硫酸钠的基本反应及对pH的要求(掌握);碘及硫代硫酸钠标准溶液的配制及标定(掌握);碘量法测定铜和葡萄糖(掌握)溴酸钾法:该法测定有机物的原理(掌握);测定苯酚的反应及相关例题(掌握)一、单选题(本题共20小题)1. 在不发生自身歧化反应的条件下,以下电对ϕ值不受溶液酸度影响的是()A. MnO4-/ MnO42-B. MnO2/Mn2+C. S/H2SD. O2/H2O2. 下面说法中错误的是()A. 电对的电极电位越低,其还原态的还原能力就越强B. 电对的电极电位越高,其氧化态的氧化能力就越强C. 某电对的氧化态可氧化电极电位比它高的另一电对的还原态D. 某电对的还原态可还原电极电位比它高的另一电对的氧化态3. 在含有Fe3+和Fe2+的溶液中,加入下列何种溶液,Fe3+/Fe2+电对的电位将升高(不考虑离子强度影响)()A. 邻二氮菲B. HClC. H3PO4D. H2SO44. 已知V 77.023Fe /Fe =ϕθ++,加入NaF 后,94.7)F (Fe 103=α+,1)F (Fe 2=α+,此时'Fe /Fe 23θ++ϕ为( ) A. 0.030 V B. 0.30 V C. 0.77 V D. 0.79 V5. Cl -对KMnO 4法测定铁有干扰,是因为KMnO 4氧化Fe 2+的同时加速了KMnO 4氧化Cl -的速率,因此KMnO 4氧化Fe 2+的反应称为( ) A. 催化反应B. 诱导反应C. 连锁反应D. 共轭反应6. 对氧化还原反应速率没有明确影响的因素是 A. 反应温度B. 反应物浓度C. 催化剂D. 两电对电位差7. 若两电对在反应中电子转移数均分别2,为使反应完全程度达到99.9%,两电对的条件电位差至少应大于( ) A. 0.09 VB. 0.27 VC. 0.36 VD. 0.18 V8. 若两电对在反应中电子转移数分别为1和2,为使反应完全程度达到99.9%,两电对的条件电位差至少应大于: A. 0.09 VB. 0.27 VC. 0.36 VD. 0.18 V9. 已知1 mol.l -1 H 2SO 4溶液中,V 45.1'Mn /MnO 24=ϕθ+-,V 68.0'Fe /Fe 23=ϕθ++,在此条件下用KMnO 4标准溶液滴定Fe 2+,其等当点(化学计量点)的电位为( ) A. 0.38 VB. 0.73 VC. 0.89 VD. 1.32 V10. 用Fe 3+滴定Sn 2+时,下列有关滴定曲线的叙述中不正确的是( ) A. 滴定百分率为100%处的电位为计量点电位B. 滴定百分率为50%处的电位为Sn 4+/ Sn 2+电对的条件电位C. 滴定百分率为200%处的电位为Fe 3+/ Fe 2+电对的条件电位D. 滴定百分率为25%处的电位为Sn 4+/ Sn 2+电对的条件电位11. 利用下列反应进行氧化还原滴定时,其滴定曲线在化学计量点前后对称的是( ) A. +++++=+4223Sn Fe 2Sn Fe 2B. ---+=+2642322O S I 2O S 2IC. +++++=+3324Fe Ce Fe CeD. O H 7Fe 6Cr 2H 14Fe 6O Cr 2332272++=++++++-12. 用0.02 和0.06 mol ⋅L -1 KMnO 4溶液滴定0.1 mol ⋅L -1 Fe 2+溶液,两种情况下滴定突跃大小将( ) A. 相同B. 浓度大的突跃大C. 浓度小的突跃大D. 无法判定13. 在1 mol ⋅L -1 H 2SO 4溶液中,V 44.1'Ce /Ce 34=ϕθ++;V 68.0'Fe /Fe 23=ϕθ++,以Ce 4+滴定Fe 2+时,最适宜的指示剂是( )A. 二苯胺磺酸钠(V 84.0'In =ϕθ) B. 邻苯氨基苯甲酸(V 89.0'In =ϕθ) C. 邻二氮菲—亚铁(V 06.1'In =ϕθ)D. 硝基邻二氮菲—亚铁(V 25.1'In =ϕθ)14. 间接碘量法中加入淀粉指示剂的适宜时间是( ) A. 滴定开始时B. 滴定至近终点时C. 滴定至溶液无色时D. 滴定至反应完成度约50%时15. 用Na 2C 2O 4标定KMnO 4溶液浓度的时候,如果溶液酸度过低,则会导致测定结果( ) A. 偏高B. 偏低C. 无影响D. 不确定16. 已知在1 mol ⋅L -1 HCl 介质中V 68.0'Fe /Fe 23=ϕθ++,V 14.0'Sn /Sn 24=ϕθ++,若 20 mL 0.10 mol ⋅L -1 Fe 3+溶液(1 mol ⋅L -1 HCl 介质)与40 mL 0.050 mol ⋅L -1 SnCl 2溶液(1 mol ⋅L -1 HCl 介质)相混合,达到平衡时体系的电位是( )A. 0.14 VB. 0.32 VC. 0.50 VD. 0.68 V17. 碘量法要求在中性或弱酸性介质中进行,若酸度太大将会( ) A. 反应不定量 B. I 2易挥发C. 终点不明显D. I -被氧化,Na 2S 2O 3被分解18. 用K 2Cr 2O 7基准物质标定Na 2S 2O 3溶液时,必须采用间接滴定方式的标定原因是( ) A. 反应速率慢B. 反应无确定的计量关系C. K 2Cr 2O 7的氧化能力 不足D. 无合适的指示剂19. 间接碘量法测定铜时,加入过量KI 的作用是作为( ) A. 还原剂、配位剂、催化剂 B. 还原剂、沉淀剂、催化剂 C. 缓冲剂、掩蔽剂、沉淀剂D. 还原剂、配位剂、沉淀剂20. 溴酸钾法测定苯酚的反应式如下:O H 3Br 3H 6Br 5Br 223+⇔+++--;HBr 3OH Br H C Br 3OH H C 336266+⇔+;--+⇔+Br 2I I 2Br 22;---+⇔+2642322O S I 2O S 2I在此测定中,相同物质的量的Na 2S 2O 3与苯酚电子转移数之比 A. 1:6 B. 3:1 C. 4:1 D. 2:1二、填空题(共16小题,35个空) 1. 已知223I Fe 2I 2Fe2+=++-+,已知V 77.023Fe /Fe =ϕθ++,V 535.0I /I 2=ϕ-θ,则其理论平衡常数(25℃)为lgK =__________。
第07章(热力学第一定律)带答案刘培姣
V思考题7-6图思 考 题7-1 “功,热量和内能都是系统状态的单值函数”这种说法对吗?答:仅内能是系统状态的单值函数, 功,热量是过程量,即使初、末状态一定,经历不同的过程,系统所做的功和吸收的热量不同.7-2 一物质系统从外界吸收一定的热量,则 (A) 系统的内能一定增加. (B) 系统的内能一定减少. (C) 系统的内能一定保持不变.(D) 系统的内能可能增加,也可能减少或保持不变. 解:改变系统的内能有两种方式:做功和热传递,选[ D ]7-3 一定量的理想气体处于热动平衡状态时,此热力学系统有三个宏观量不随时间变化,是哪三个? [ 体积、温度和压强 ]解:是描述热力学系统的三个宏观量参量: [ 体积、温度和压强 ]7-4 一定量的某种理想气体起始温度为T ,体积为V ,该气体在下面循环过程中经过三个平衡过程:(1) 绝热膨胀到体积为2V ,(2)等体变化使温度恢复为T ,(3) 等温压缩到原来体积V ,则此整个循环过程中(A) 气体向外界放热 (B) 气体对外界作正功 (C) 气体内能增加 (D) 气体内能减少解:从P-V 图上可知系统作逆循环,外界对系统做功,而内能不变,故气体向外界放热.选[ A ]7-5 对于理想气体系统来说,在下列过程中,哪个过程系统所吸收的热量、内能的增量和对外作的功三者均为负值?(A) 等体降压过程. (B) 等温膨胀过程. (C) 绝热膨胀过程. (D) 等压压缩过程.解: 等压压缩过程体积减小,温度降低,外界对气体做功,内能减少,放热, 系统所吸收的热量、内能的增量和对外作的功三者均为负值。
前三选项总有一者为零。
选[ D ]7-6 如图所示,一定量理想气体从体积V 1,膨胀到体积V 2分别经历的过程是:A →B 等压过程,A →C 等温过程;A →D 绝热过程,其中吸热量最多的过程(A) 是A →B. (B)是A →C. (C)是A →D. (D)既是A →B 也是A →C, 两过程吸热一样多.解: A →B 过程对外做功最多,内能增量最大,根据热力学第一定律,E A Q ∆+=,A →B 过程吸热量最多。
第07章 稳恒磁场01电流与电动 比奥萨伐尔定律PPT课件
运动一周,非静电力所做的功。
Ek dl
L
7
第八章 稳恒磁场
7.1 电流与电动势 7.2 磁场 磁感应强度 7.3 毕奥-萨伐尔定律 7.4 安培环路定理 7.5 磁场载流导体的作用 7.6 磁介质对磁场的影响 7.7 铁磁质
8
§7.2 磁场 磁感应强度
一、 基本磁现象 磁场
1. 基本磁现象
1.磁体与磁体(磁极、磁力)
第七章 稳恒磁场
7.1 电流与电动势 7.2 磁场 磁感应强度 7.3 -萨伐尔定律 7.4 安培环路定理 7.5 磁场载流导体的作用 7.6 磁介质对磁场的影响 7.7 铁磁质
1
§7.1 电流与电动势 一、电流 电流密度
1. 电流强度
单位时间内通过截面S 的电量
I dq dt
电流单位: A(安培)
受力F m ax ,将Fmax v 方向定义为该点B 的方向。
磁感应强度大小B Fmax
F m ax
qv
单位:特斯拉(T) 1T1NA-1m -1
q
FqvB ——洛仑兹力
14
补充: 带电粒子在磁场中的运动
运动电荷在稳恒磁场中受力 FmqvB
匀强磁场中
1 . 若 v // B , 磁场对粒子的作用力为零,粒子仍将以 v 作匀速直线运动。
18
3. 一般情F况m下,qvv与BB有一R夹角mqBv ,
T 2 m qB
v// vcos
v
v
v vsin
螺距:
h
v//T
2 m
qB
v cos
v //
h
B
应用: 磁聚焦
非均匀磁场
19
由于地磁场俘获带电粒子而出现的现象
vb教案全套完整版(2024)
2024/1/24
21
菜单、工具栏和状态栏设计
菜单设计
创建菜单栏,添加菜单项和子菜单项,设置菜单 项的快捷键和提示信息。
工具栏设计
创建工具栏,添加工具栏按钮,设置按钮的图标 和提示信息。
状态栏设计
创建状态栏,添加状态栏面板,显示程序状态和 提示信息。
2024/1/24
22
06
VB数据库编程
2024/1/24
事件驱动
VB通过事件驱动编程模型,允许用户 根据特定事件编写代码,实现程序的 交互性。
2024/1/24
8
VB开发环境介绍
2024/1/24
集成开发环境(IDE)
01
VB提供了一个集成开发环境,包括代码编辑器、调试器、窗体
设计器等工具,方便用户进行程序设计和开发。
控件工具箱
02
VB提供了丰富的控件工具箱,包括按钮、文本框、标签等常用
ADO编程步骤
通常包括建立数据库连接、执行SQL命令、处理结果集和 关闭数据库连接等步骤。
25
数据库访问与操作实例
连接数据库
使用ADO的Connection对象建 立与数据库的连接,需要提供 数据源名称、用户名和密码等 信息。
2024/1/24
执行SQL命令
使用ADO的Command对象执 行SQL命令,可以执行查询、 插入、更新和删除等操作。
了解While循环的使用方法, 掌握其与For循环的区别和联
系。
2024/1/24
循环控制语句
熟悉VB中的循环控制语句, 如Exit For、Exit While等,
实现循环的中断或退出。
多重循环
掌握多重循环的编写技巧,实 04
第07章(热力学第一定律)习题答案
75 对于理想气体系统来说,在下列过程中,哪个过程系统所吸收的热量、内能的增
量和对外作的功三者均为负值?
(A) 等体降压过程. (B) 等温膨胀过程.
(C) 绝热膨胀过程. (D) 等压压缩过程.
答:等压压缩过程体积减小,温度降低,外界对气体做功,内能减少,放热, 系统所吸收的热
量、内能的增量和对外作的功三者均为负值。前三选项总有一者为零。选[ D ]
]
解: C vA
=
3 2
R
5 C vB = 2 R
(1) E A
= nCvATA
=
3 2
RT
A
=
3 2
P0V0
EB
= nCvBTB
=
2. 5 2
RTB
=
5 2
P0V0
(2)设两种气体混合后处于平衡时的温度为 T,气体内能不变,有
3
5
3
5
2
RT
+
2. 2
RT
=
2
P0V0
+
2
P0V0
T = 8P0V 0 13R
713 奥托循环(小汽车、摩托车汽油机的循环模型)如
习题 713 图
图. ab 各 cd 为绝热过程, bc 各 da 为等体过程. 用T1 、T2 、T3 、T4 分别代表 a 态、b 态、
c 态、d 态的温度.若已知温度 T1 和 T2 ,求此循环的效率,判断此循环是否为卡诺循环.
[ 1 - T2 ;否 ] T1
T末 = 5T0
Q = QT
+ QV
=
nRT0
ln
5V 0 V0
+ uCV (T末
第07章 弯曲变形
的相互作用力,故应作为分段点;
材料力学 中南大学土木建筑学院 8
(2)分段列出梁的挠曲线近似微分方程,并对其积 分 两次 对挠曲线近似微分方程积分一次,得转角方程:
( x)
d dx 1 EI ( M ( x)dx c)
再积分一次,得挠曲线方程:
( x)
( M ( x)dx) cx D EI 1
l
F x
x
写出微分方程并积分
EIv M ( x ) F ( l x )
y
应用位移边界条件求积分常数
EIv ( 0 ) 1 6 Fl C 2 0
3
EIv
1 2
F (l x ) C1
2
E I ( 0 ) E Iv ( 0 )
1 2
材料力学 中南大学土木建筑学院 11
边界条件、连续条件应用举例 弯矩图三段, 共6个积分常数 需6个边界条件 和连续条件
B v B 0 :
v B v B , B B
q=10kN/m
F=20kN B
D E
A
a
a=2m 20kN•m
a
A
(-)
B
D (+) 10kN•m
C:vC vC
C C
D: v D 0
材料力学 中南大学土木建筑学院 13
例题:列出图示结构的边界条件和连续条件。
边界条件:
材料力学
A 0 A 0
连续条件:
B左 B右
B左
B右
14
中南大学土木建筑学院
例题:列出图示结构的边界条件和连续条件。
分析化学第07章练习题
复习提纲:第七章氧化还原滴定法1. 氧化还原反应平衡氧化还原电对(可逆、不可逆;对称、不对称)、氧化还原半反应及氧化反应的本质(掌握)电极电位、标准电极电位和条件电极电位的定义及关系、Nernst方程(掌握)决定条件电极电位的因素:离子强度,配位、沉淀等副反应和溶液酸度(掌握课件例子)氧化还原反应进行的方向(会判断,并且介质条件改变可能会导致氧化还原反应的方向及完成度发生改变);氧化还原反应的程度即条件平衡常数的计算公式(掌握);反应完成度≥99.9%时对两电对∆ϕθ'的要求(既要记住,又要会计算)2. 反应速率及影响因素要清楚两电对∆ϕθ'的大小对反应速度没有明确影响;温度和浓度升高,反应速度升高;催化剂的影响和诱导反应记住课件的例子3. 氧化还原滴定曲线滴定曲线的横纵坐标;sp时及前、后平衡电位的计算(掌握);关于滴定突跃的几点讨论(掌握);指示剂:自身指示剂、专属指示剂和氧化还原指示剂(了解)氧化还原指示剂的原理、理论变色点和变色范围(掌握)4. 氧化还原的预处理预处理的必要性及预处理剂的选取原则(了解);课件中的例子(掌握)5. 氧化还原滴定法:能熟练运用等电子规则处理氧化还原反应的计算题高锰酸钾法:高锰酸钾氧化能力及还原产物与pH的关系(掌握);高锰酸钾标准溶液的配制与标定方法及注意事项(掌握);高锰酸钾测铁、过氧化氢、MnO2等物质反应式及注意事项(掌握)重铬酸钾法:重铬酸钾的特点及其测定铁(有汞法和无汞法)的操作注意事项(掌握);化学耗氧量的定义及计算(掌握)。
碘量法:直接碘量法和间接碘量法的原理及碘量法指示剂(掌握);碘和硫代硫酸钠的基本反应及对pH的要求(掌握);碘及硫代硫酸钠标准溶液的配制及标定(掌握);碘量法测定铜和葡萄糖(掌握)溴酸钾法:该法测定有机物的原理(掌握);测定苯酚的反应及相关例题(掌握)一、单选题(本题共20小题)1. 在不发生自身歧化反应的条件下,以下电对ϕ值不受溶液酸度影响的是()A. MnO4-/ MnO42-B. MnO2/Mn2+C. S/H2SD. O2/H2O2. 下面说法中错误的是()A. 电对的电极电位越低,其还原态的还原能力就越强B. 电对的电极电位越高,其氧化态的氧化能力就越强C. 某电对的氧化态可氧化电极电位比它高的另一电对的还原态D. 某电对的还原态可还原电极电位比它高的另一电对的氧化态3. 在含有Fe3+和Fe2+的溶液中,加入下列何种溶液,Fe3+/Fe2+电对的电位将升高(不考虑离子强度影响)()A. 邻二氮菲B. HClC. H3PO4D. H2SO44. 已知V 77.023Fe /Fe =ϕθ++,加入NaF 后,94.7)F (Fe 103=α+,1)F (Fe 2=α+,此时'Fe /Fe 23θ++ϕ为( ) A. 0.030 V B. 0.30 V C. 0.77 V D. 0.79 V5. Cl -对KMnO 4法测定铁有干扰,是因为KMnO 4氧化Fe 2+的同时加速了KMnO 4氧化Cl -的速率,因此KMnO 4氧化Fe 2+的反应称为( ) A. 催化反应B. 诱导反应C. 连锁反应D. 共轭反应6. 对氧化还原反应速率没有明确影响的因素是 A. 反应温度B. 反应物浓度C. 催化剂D. 两电对电位差7. 若两电对在反应中电子转移数均分别2,为使反应完全程度达到99.9%,两电对的条件电位差至少应大于( ) A. 0.09 VB. 0.27 VC. 0.36 VD. 0.18 V8. 若两电对在反应中电子转移数分别为1和2,为使反应完全程度达到99.9%,两电对的条件电位差至少应大于: A. 0.09 VB. 0.27 VC. 0.36 VD. 0.18 V9. 已知1 mol.l -1 H 2SO 4溶液中,V 45.1'Mn /MnO 24=ϕθ+-,V 68.0'Fe /Fe 23=ϕθ++,在此条件下用KMnO 4标准溶液滴定Fe 2+,其等当点(化学计量点)的电位为( ) A. 0.38 VB. 0.73 VC. 0.89 VD. 1.32 V10. 用Fe 3+滴定Sn 2+时,下列有关滴定曲线的叙述中不正确的是( ) A. 滴定百分率为100%处的电位为计量点电位B. 滴定百分率为50%处的电位为Sn 4+/ Sn 2+电对的条件电位C. 滴定百分率为200%处的电位为Fe 3+/ Fe 2+电对的条件电位D. 滴定百分率为25%处的电位为Sn 4+/ Sn 2+电对的条件电位11. 利用下列反应进行氧化还原滴定时,其滴定曲线在化学计量点前后对称的是( ) A. +++++=+4223Sn Fe 2Sn Fe 2B. ---+=+2642322O S I 2O S 2IC. +++++=+3324Fe Ce Fe CeD. O H 7Fe 6Cr 2H 14Fe 6O Cr 2332272++=++++++-12. 用0.02 和0.06 mol ⋅L -1 KMnO 4溶液滴定0.1 mol ⋅L -1 Fe 2+溶液,两种情况下滴定突跃大小将( ) A. 相同B. 浓度大的突跃大C. 浓度小的突跃大D. 无法判定13. 在1 mol ⋅L -1 H 2SO 4溶液中,V 44.1'Ce /Ce 34=ϕθ++;V 68.0'Fe /Fe 23=ϕθ++,以Ce 4+滴定Fe 2+时,最适宜的指示剂是( )A. 二苯胺磺酸钠(V 84.0'In =ϕθ) B. 邻苯氨基苯甲酸(V 89.0'In =ϕθ) C. 邻二氮菲—亚铁(V 06.1'In =ϕθ)D. 硝基邻二氮菲—亚铁(V 25.1'In =ϕθ)14. 间接碘量法中加入淀粉指示剂的适宜时间是( ) A. 滴定开始时B. 滴定至近终点时C. 滴定至溶液无色时D. 滴定至反应完成度约50%时15. 用Na 2C 2O 4标定KMnO 4溶液浓度的时候,如果溶液酸度过低,则会导致测定结果( ) A. 偏高B. 偏低C. 无影响D. 不确定16. 已知在1 mol ⋅L -1 HCl 介质中V 68.0'Fe /Fe 23=ϕθ++,V 14.0'Sn /Sn 24=ϕθ++,若 20 mL 0.10 mol ⋅L -1 Fe 3+溶液(1 mol ⋅L -1 HCl 介质)与40 mL 0.050 mol ⋅L -1 SnCl 2溶液(1 mol ⋅L -1 HCl 介质)相混合,达到平衡时体系的电位是( )A. 0.14 VB. 0.32 VC. 0.50 VD. 0.68 V17. 碘量法要求在中性或弱酸性介质中进行,若酸度太大将会( ) A. 反应不定量 B. I 2易挥发C. 终点不明显D. I -被氧化,Na 2S 2O 3被分解18. 用K 2Cr 2O 7基准物质标定Na 2S 2O 3溶液时,必须采用间接滴定方式的标定原因是( ) A. 反应速率慢B. 反应无确定的计量关系C. K 2Cr 2O 7的氧化能力 不足D. 无合适的指示剂19. 间接碘量法测定铜时,加入过量KI 的作用是作为( ) A. 还原剂、配位剂、催化剂 B. 还原剂、沉淀剂、催化剂 C. 缓冲剂、掩蔽剂、沉淀剂D. 还原剂、配位剂、沉淀剂20. 溴酸钾法测定苯酚的反应式如下:O H 3Br 3H 6Br 5Br 223+⇔+++--;HBr 3OH Br H C Br 3OH H C 336266+⇔+;--+⇔+Br 2I I 2Br 22;---+⇔+2642322O S I 2O S 2I在此测定中,相同物质的量的Na 2S 2O 3与苯酚电子转移数之比 A. 1:6 B. 3:1 C. 4:1 D. 2:1二、填空题(共16小题,35个空) 1. 已知223I Fe 2I 2Fe2+=++-+,已知V 77.023Fe /Fe =ϕθ++,V 535.0I /I 2=ϕ-θ,则其理论平衡常数(25℃)为lgK =__________。
07 [病理生理学]缺氧 (2)
熟悉
缺氧时机体功能与代谢变化;
了解
影响缺氧耐受性的因素及氧疗。
概
述
ATP 来源于氧化反应。 成年人需氧量: 250ml/min。 机体内储存氧量:1500ml。 无氧供应下,20∽30秒出现症状, 数分钟内死亡。
外呼吸
五看代偿公式, 定单纯型or混合型酸碱失衡
PaCO2代偿值预计:ΔPaCO2=1.2×(AB-24) ±2 =1.2×(9.8-24)±2 = 1.2×(-14.2)±2 =-17.04 ±2mmHg PaCO2预测值 PaCO2 =40+ΔPaCO2 =40+(-17.04 ±2) = 22.96 ±2mmHg 因为实测PaCO2为30mmHg超出了预测值的 最大值22.96mmHg,说明体内有过多的CO2 潴留,所以还合并有呼吸性酸中毒。
是Hb与O2结合
意 义 :
PO2≥60mmHg →
SO2≥90%
2.中段: 坡度较陡。相当 于PO2 40~60mmHg, HbO2释放O2的部分 PO2降低能促进大量氧解 离 意义:维持正常时组织 氧供。
3.下段: 坡度更陡。 相当于PO2<40mmHg ,当机体缺氧时组织中的氧 分压极度降低,这部分氧可以代偿释放 意义:反应氧的储备能力。
四、有AG↑型代酸时,需要作碱补偿 1、缓冲前AB=AB+△AG=AB+(AG-12) 2、有AG↑型代酸时,一定要用缓冲前的AB值 来进行判断。 3、碱补偿后是否有代碱的判断有两个标准: (1)有原发呼吸性酸碱失衡时,以代偿范围为标 准。 (2)非或无原发呼吸性酸碱失衡时,以AB正常 值为标准。
二、血氧容量(CO2max )
07热力学第一定律习题解答
第七章热力学第一定律一选择题1. 图为质量一定的某理想气体由初态a 经两过程到达末状态c ,其中abc 为等温过程,那么〔〕A . adc 也是一个等温过程B . adc 和abc 过程吸收的热量相等C . adc 过程和abc 过程做功一样D . abc 过程和adc 过程气体内能变化一样 解:热量和功均是过程量,内能是状态量。
故答案选D 。
2. 有两个一样的容器,容积不变,一个盛有氦气,另一个盛有氢气,〔看成刚性分子〕,它们的压强和温度都相等,现将5J 的热量传给氢气,使氢气的温度升高,如果使氦气也升高同样的温度,那么应向氦气传递热量是 ( )A . 6J B. 5J C. 3J D. 2J解:氦气是单原子分子,自由度为3,氢气是双原子分子,自由度为5。
根据理想气体的状态方程,两种气体的摩尔数一样。
容器容积不变,气体吸收的热量全部转化为内能。
再根据理想气体的内能公式,使氦气也升高同样的温度,应向氦气传递热量是3J 。
答案选C 。
3. 1mol 的单原子分子理想气体从状态A 变为状态B ,如果不知是什么气体,变化过程也不知道,但A 、B 两态的压强、体积和温度都知道,那么可求出( )A.气体所作的功B.气体内能的变化C.气体传给外界的热量D.气体的质量 解 答案:B4. 系统从状态A 经某一过程到达状态B ,过程吸热10J ,系统内能增量为5J 。
现系统沿原过程从状态B 返回状态A ,那么系统对外作功是( )A. -15JB. -5JC. 5JD. 15J解 热力学第一定律的表达式W U Q +∆=,系统从A 态经某一过程到达B 态时系统做的功为5510=-=∆-=U Q W J 。
因此当系统沿原过程从B 态返回A 态时,系统对外做功为-5J 。
因此答案选B 。
5. 用公式T C U V ∆=∆m ,ν计算理想气体内能增量时,此式 ( ) A.只适用于准静态的等体过程B.只适用于一切等体过程C.只适用于一切准静态过程D.适用于一切始末态为平衡态的过程选择题1图解 答案选D6.对于室温下的双原子分子理想气体,在等压膨胀的情况下,系统对外所作的功与从外界吸收的热量之比W / Q 等于 ( )A. 2/3B.1/2C.2/5D.2/7 解 答案选 D7. 理想气体初态的体积为V 1,经等压过程使体积膨胀到V 2,那么在此过程中,气体对外界作 〔 〕 A .正功,气体的内能增加B .正功,气体的内能减少 C .负功,气体的内能增加D .负功,气体的内能减少解 等压膨胀过程系统对外作正功,由于压强不变体积增加,所以温度升高,因此气体的内能增加。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【例7-6】编写计算n!的Sub过程。 由于Sub过程名称不能返回值,因此需要在形 参表中引入另一个参数来返回阶乘值。
Sub S(N As Integer, F As Long) ' 增加参数F用于返回
阶乘值
Dim I As Integer F=1 For I = 1 To N
F=F*I
Next I End Sub
形参 Sub SubTest(n As Integer,Sum As Single)
…
End Sub
调用语句:
Call SubTest( a , s ) 实参
27
说明:
一般情况下,形参表与实参表中对应参数个数、 类型、位置顺序必须一一对应。
形参表中的参数可以是: 除固定长度字符串之外的合法变量名、数组名() 实参表中的参数可以是: 常量、变量、表达式、数组名() 形参与实参的结合有两种方式:
17
【例7-5】编写一个根据三角形的三条边计算 三角形面积及其内切圆面积的Sub过程。 在Sub过程中可以引入5个参数,其中: 3个参数用于接收三角形的三条边a、b、c, 2个参数用来返回三角形面积Area1和内切圆面 积Area2 。设r为三角形内切圆的半径。 计算三角形内切圆的面积可以使用以下公式:
21
7.2.2 Sub过程的调用 格式一: Call 过程名[(实参表)]
格式二:
过程名 [实参表]
说明: (1) <过程名>: 要调用的Sub过程名。 (2) <实参表>: 可以是常量、变量或表达式,各参数 之间用逗号分隔。如果是数组参数,则要在数 组名之后跟一对空括号。
22
(3) 用Call语句调用一个Sub过程时,如果过程本身 没有参数,则省略<实参表>和括号。 (4) 格式二省略了Call关键字,同时<实参表>两边 也不能带括号。
【例7-8】输入三角形的三条边,调用例7-5的Sub 过程求三角形的面积和它的内切圆的面积。
Text1 Text4 Text5 Command1
23
Text2
Text3
Private Sub Command1_Click() a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) Call S(a, b, c, Area1, Area2) ' 调用Sub过程 Text4.Text = Format(Area1, "0.000") ' 显示三角形面积,
5
7.1.1 Function过程的定义
1. Function过程的格式
[Public|Private][Static] Function <函数过程名>
([<形参表>]) [As <类型>] [<语句组>] <函数过程名> = <表达式> [Exit Function] 函数过程体
[<语句组>]
' 调用Area过程计算面积,并显示 在Text4中 Text4.Text = Area(a, b, c) End Sub
12
【例7-4】输入m和n的值,调用例7-2的函数过 程求组合数。求组合数公式如下:
m! C n!(m n )!
n m
Text1
Text3
Text2
Command1
13
到函数过程名中
End If End Function
9
【例7-2】编写一个计算N!的函数过程。
Function Fact(N As Integer) As Long ' 设参数N为Integer 类型、函数Fact为Long类型 Dim I As Integer, F As Long ' 定义过程内部的局部变量 F=1 ' F用于保存阶乘值
(4) <函数过程名>: Function过程的名称,遵循变量 的命名规则。 (5) <形参表>: 表示Function过程的参数变量列表。 多个变量之间用逗号隔开。格式: [ByVal|ByRef] <Байду номын сангаас量名>[( )] [As <类型>]
7
ByVal: 表示该参数按值传递。
ByRef: 缺省值。表示该参数按地址传递。
20
【例7-7】编写Sub过程,打印以下图形。
Sub a() For i = 1 To 5 Print Tab(7 - i); For j = 1 To 2 * i - 1 Print "*"; Next j
* *** ***** ******* *********
Next i End Sub
按值传递和按地址传递。
28
7.3.2 按值传递和按地址传递 1.按值传递 实参把其值传递给形参而不传递实参的地址。 数据的传递是单向的。 (1) 当实参为常量或表达式时,数据传递总是单向 的。 例如:
Sub Test( n As Integer,Sum As Single)
Call Test(10, 1+2)
15
7.2.1 Sub过程的定义
1. Sub过程的格式 [Private|Public][Static] Sub <过程名> [(<形参表>)] [<语句组>] [Exit Sub]
Sub过程体
[<语句组>]
End Sub
16
2. 说明
(1) Exit Sub用于退出Sub过程。 (2) <过程名>不具有值的意义,在Sub过程中不能给 <过程名>赋值,也不能给<过程名>定义类型。 (3) Sub过程通过<形参表>中的参数返回值。 (4) Sub过程的建立方法与Function过程的建立方法 相同。
Private Sub Command1_Click() Dim m As Integer, n As Integer, c As Double n = Val(Text1.Text) m = Val(Text2.Text)
' 调用Fact函数求各阶乘值,计算组合数 c = Fact(m) / (Fact(n) * (Fact(m - n)))
End Function
6
2. 说明
(1) Public: 缺省值。使用Public时表示各模块的所 有其他过程都可以调用该过程。 (2) Private: 使用Private时表示只有本模块中的其他 过程才可以调用该Function过程。
(3) Static: 使用Static时表示将过程中的所有局部变 量说明为静态变量。
结果保留三位小数
Text5.Text = Format(Area2, "0.000") ' 显示内切圆面积,
结果保留三位小数
End Sub
24
【例7-9】调用例7-6求n!的Sub过程,求组 合数。
Private Sub Command1_Click() Dim M As Integer, N As Integer, c As Double Dim f1 As Long, f2 As Long, f3 As Long N = Val(Text1.Text) M = Val(Text2.Text) Call S(M, f1) ' 调用后f1=m! Call S(N, f2) ' 调用后f2=n! Call S(M - N, f3) ' 调用后f3=(m-n)! c = f1 / (f2 * f3) ' 求组合数 Text3.Text = c ' 用Text3显示组合数 End Sub
For I = 1 To N
F=F*I Next I Fact = F End Function
10
' 给函数过程名赋值
7.1.2 Function过程的调用 1. 调用位置 直接在表达式中调用。 2. 调用格式
<函数过程名>([<实参表>]) (1)函数过程名:必须是一个已定义的函数过程的 名称。 (2)实参表:指要传递给函数过程的常量、变量或 表达式,各参数之间用逗号分隔。如果参数是数组, 在数组名之后必须跟一对空括号。
Text3.Text = c End Sub
' 用Text3显示组合数
14
7.2 Sub过程
当需要自定义过程返回一个值时,使用
Function过程很容易实现。
但在实际应用中,可能希望过程不需要返回
值,例如,使用过程打印一个图形;或需要过程
返回多个值,例如,利用过程对一批数据进行排
序,在这些情况下就需要使用Sub过程。
11
【例7-3】输入三角形的三条边的值,调用例7-1 编写的函数过程计算三角形的面积。
Text1
Private Sub Command1_Click()
a = Val(Text1.Text) b = Val(Text2.Text)
Command1
Text2
Text3
Text4
c = Val(Text3.Text)
29
8
【例7-1】编写一个根据三角形的三条边计算三 角形面积的函数过程。
计算公式:
area p(p a )( p b)( p c) , 1 p (a b c) 2
Function Area(a, b, c) If a + b <= c Or b + c <= a Or c + a <= b Then Area = 0 '如果a、b、c不能构成三角形将面积设为0 MsgBox "输入的边长不能构成三角形", vbExclamation, " 注意" Else p = (a + b + c) / 2 Area = Sqr(p * (p - a) * (p - b) * (p - c)) ' 计算面积,保存