gg修改器脚本制作点屏脚本jsbox步数

发布时间:2020-10-23 来源:脚本之家 点击:

BASModule模块
把以下代码回到BASModule模块:

OptionExplicit
PrivateConstIP_SUCCESSAsLong=0
PrivateConstIP_STATUS_BASEAsLong=11000
PrivateConstIP_BUF_TOO_SMALLAsLong=(11000 1)
PrivateConstIP_DEST_NET_UNREACHABLEAsLong=(11000 2)
PrivateConstIP_DEST_HOST_UNREACHABLEAsLong=(11000 3)
PrivateConstIP_DEST_PROT_UNREACHABLEAsLong=(11000 4)
PrivateConstIP_DEST_PORT_UNREACHABLEAsLong=(11000 5)
PrivateConstIP_NO_RESOURCESAsLong=(11000 6)
PrivateConstIP_BAD_OPTIONAsLong=(11000 7)
PrivateConstIP_HW_ERRORAsLong=(11000 8)
PrivateConstIP_PACKET_TOO_BIGAsLong=(11000 9)
PrivateConstIP_REQ_TIMED_OUTAsLong=(11000 10)
PrivateConstIP_BAD_REQAsLong=(11000 11)
PrivateConstIP_BAD_ROUTEAsLong=(11000 12)
PrivateConstIP_TTL_EXPIRED_TRANSITAsLong=(11000 13)
PrivateConstIP_TTL_EXPIRED_REASSEMAsLong=(11000 14)
PrivateConstIP_PARAM_PROBLEMAsLong=(11000 15)
PrivateConstIP_SOURCE_QUENCHAsLong=(11000 16)
PrivateConstIP_OPTION_TOO_BIGAsLong=(11000 17)
PrivateConstIP_BAD_DESTINATIONAsLong=(11000 18)
PrivateConstIP_ADDR_DELETEDAsLong=(11000 19)
PrivateConstIP_SPEC_MTU_CHANGEAsLong=(11000 20)
PrivateConstIP_MTU_CHANGEAsLong=(11000 21)
PrivateConstIP_UNLOADAsLong=(11000 22)
PrivateConstIP_ADDR_ADDEDAsLong=(11000 23)
PrivateConstIP_GENERAL_FAILUREAsLong=(11000 50)
PrivateConstMAX_IP_STATUSAsLong=(11000 50)
PrivateConstIP_PENDINGAsLong=(11000 255)
PrivateConstPING_TIMEOUTAsLong=500
PrivateConstWS_VERSION_REQDAsLong=&H101
PrivateConstMIN_SOCKETS_REQDAsLong=1
PrivateConstSOCKET_ERRORAsLong=-1
PrivateConstINADDR_NONEAsLong=&HFFFFFFFF
PrivateConstMAX_WSADescriptionAsLong=256
PrivateConstMAX_WSASYSStatusAsLong=128

PrivateTypeICMP_OPTIONS
TtlAsByte
TosAsByte
FlagsAsByte
OptionsSizeAsByte
OptionsDataAsLong
EndType

PublicTypeICMP_ECHO_REPLY
AddressAsLong
statusAsLong
RoundTripTimeAsLong
DataSizeAsLong注释:formerlyinteger
注释:ReservedAsInteger
DataPointerAsLong
OptionsAsICMP_OPTIONS
DataAsString*250
EndType

PrivateTypeWSADATA
wVersionAsInteger
wHighVersionAsInteger
szDescription(0ToMAX_WSADescription)AsByte
szSystemStatus(0ToMAX_WSASYSStatus)AsByte
wMaxSocketsAsLong
wMaxUDPDGAsLong
dwVendorInfoAsLong
EndType

PrivateDeclareFunctionIcmpCreateFileLib"icmp.dll"()AsLong

PrivateDeclareFunctionIcmpCloseHandleLib"icmp.dll"(ByValIcmpHandleAsLong)AsLong

PrivateDeclareFunctionIcmpSendEchoLib"icmp.dll"(ByValIcmpHandleAsLong,ByValDestinationAddressAsLong,ByValRequestDataAsString,ByValRequestSizeAsLong,ByValRequestOptionsAsLong,ReplyBufferAsICMP_ECHO_REPLY,ByValReplySizeAsLong,ByValTimeoutAsLong)AsLong

PrivateDeclareFunctionWSAGetLastErrorLib"WSOCK32.DLL"()AsLong

PrivateDeclareFunctionWSAStartupLib"WSOCK32.DLL"(ByValwVersionRequiredAsLong,lpWSADATAAsWSADATA)AsLong

PrivateDeclareFunctionWSACleanupLib"WSOCK32.DLL"()AsLong

PrivateDeclareFunctiongethostnameLib"WSOCK32.DLL"(ByValszHostAsString,ByValdwHostLenAsLong)AsLong

PrivateDeclareFunctiongethostbynameLib"WSOCK32.DLL"(ByValszHostAsString)AsLong

PrivateDeclareSubCopyMemoryLib"kernel32"Alias"RtlMoveMemory"(xDestAsAny,xSourceAsAny,ByValnbytesAsLong)

PrivateDeclareFunctioninet_addrLib"WSOCK32.DLL"(ByValsAsString)AsLong

PublicFunctionGetStatusCode(statusAsLong)AsString

DimmsgAsString

SelectCasestatus
CaseIP_SUCCESS:msg="ipsuccess"
CaseINADDR_NONE:msg="inet_addr:badIPformat"
CaseIP_BUF_TOO_SMALL:msg="ipbuftoo_small"
CaseIP_DEST_NET_UNREACHABLE:msg="ipdestnetunreachable"
CaseIP_DEST_HOST_UNREACHABLE:msg="ipdesthostunreachable"
CaseIP_DEST_PROT_UNREACHABLE:msg="ipdestprotunreachable"
CaseIP_DEST_PORT_UNREACHABLE:msg="ipdestportunreachable"
CaseIP_NO_RESOURCES:msg="ipnoresources"
CaseIP_BAD_OPTION:msg="ipbadoption"
CaseIP_HW_ERROR:msg="iphw_error"
CaseIP_PACKET_TOO_BIG:msg="ippackettoo_big"
CaseIP_REQ_TIMED_OUT:msg="ipreqtimedout"
CaseIP_BAD_REQ:msg="ipbadreq"
CaseIP_BAD_ROUTE:msg="ipbadroute"
CaseIP_TTL_EXPIRED_TRANSIT:msg="ipttlexpiredtransit"
CaseIP_TTL_EXPIRED_REASSEM:msg="ipttlexpiredreassem"
CaseIP_PARAM_PROBLEM:msg="ipparam_problem"
CaseIP_SOURCE_QUENCH:msg="ipsourcequench"
CaseIP_OPTION_TOO_BIG:msg="ipoptiontoo_big"
CaseIP_BAD_DESTINATION:msg="ipbaddestination"
CaseIP_ADDR_DELETED:msg="ipaddrdeleted"
CaseIP_SPEC_MTU_CHANGE:msg="ipspecmtuchange"
CaseIP_MTU_CHANGE:msg="ipmtu_change"
CaseIP_UNLOAD:msg="ipunload"
CaseIP_ADDR_ADDED:msg="ipaddradded"
CaseIP_GENERAL_FAILURE:msg="ipgeneralfailure"
CaseIP_PENDING:msg="ippending"
CasePING_TIMEOUT:msg="pingtimeout"
CaseElse:msg="unknownmsgreturned"
EndSelect

GetStatusCode=CStr(status)&"["&msg&"]"
EndFunction

PublicFunctionPing(sAddressAsString,
sDataToSendAsString,
ECHOAsICMP_ECHO_REPLY)AsLong

注释:IfPingsucceeds:
注释:.RoundTripTime=timeinmsforthepingtocomplete,
注释:.Dataisthedatareturned(NULLterminated)
注释:.AddressistheIpaddressthatactuallyreplied
注释:.DataSizeisthesizeofthestringin.Data
注释:.Statuswillbe0
注释:
注释:IfPingfails.Statuswillbetheerrorcode

DimhPortAsLong
DimdwAddressAsLong

注释:converttheaddressintoalongrepresentation
dwAddress=inet_addr(sAddress)

注释:ifavalidaddress..
IfdwAddress<>INADDR_NONEThen

注释:openaport
hPort=IcmpCreateFile()

注释:andifsuccessful,
IfhPortThen

注释:pingit.
CallIcmpSendEcho(hPort,dwAddress,sDataToSend,Len(sDataToSend),0,ECHO,Len(ECHO),PING_TIMEOUT)

注释:returnthestatusaspingsuccesandclose
Ping=ECHO.status
CallIcmpCloseHandle(hPort)

EndIf

Else:
注释:theaddressformatwasprobablyinvalid
Ping=INADDR_NONE

EndIf

EndFunction


PublicSubSocketsCleanup()

IfWSACleanup()<>0Then
MsgBox"WindowsSocketserroroccurredinCleanup.",vbExclamation
EndIf

EndSub


PublicFunctionSocketsInitialize()AsBoolean

DimWSADAsWSADATA

SocketsInitialize=WSAStartup(WS_VERSION_REQD,WSAD)=IP_SUCCESS

EndFunction

注释:--endblock--注释:

--------------------------------------------------------------------------------------------

窗体代码
把以下代码回到窗体里
OptionExplicit

PrivateSubCommand1_Click()

DimECHOAsICMP_ECHO_REPLY
DimposAsLong
DimsuccessAsLong

IfSocketsInitialize()Then

注释:pingtheippassingtheaddress,text
注释:tosend,andtheECHOstructure.
success=Ping((Text1.Text),(Text2.Text),ECHO)

注释:displaytheresults
Text4(0).Text=GetStatusCode(success)
Text4(1).Text=ECHO.Address
Text4(2).Text=ECHO.RoundTripTime&"ms"
Text4(3).Text=ECHO.DataSize&"bytes"

IfLeft$(ECHO.Data,1)<>Chr$(0)Then
pos=InStr(ECHO.Data,Chr$(0))
Text4(4).Text=Left$(ECHO.Data,pos-1)
EndIf

Text4(5).Text=ECHO.DataPointer

SocketsCleanup

Else

MsgBox"WindowsSocketsfor32bitWindows"&"environmentsisnotsuccessfullyresponding."

EndIf

EndSub

->


'中文姓名笔画计算(VBS脚本版)
dim word,key
word=inputbox("请输入你要计算的文字")
if word="" then
msgbox "小样 不是叫你不要输入文字吗"
Wscript.Quit
end if
key=char_wordnum(word)
msgbox key
Function char_wordnum(my_char_word)
dim char_wordtable(26),wordnum_i,wordnum_j,wordnum_k,temp_wordnum
temp_wordnum=""
if my_char_word="" then
char_wordnum=0
exit function
end if
char_wordtable(0)=""
char_wordtable(1)="一乙"
char_wordtable(2)="丁七乃乜九了二人亻儿入八冂几凵刀刁力勹匕十厂厶又"
char_wordtable(3)="万丈三上下丌个丫丸久乇么义乞也习乡亍于亏亡亿兀凡刃勺千卫叉口囗土士夕大女子孑孓寸小尢尸山巛川工己已巳巾干幺广廾弋弓才门飞马"
char_wordtable(4)="不与丐丑专中丰丹为之乌书予云互亓五井亢什仁仂仃仄仅仆仇仉今介仍从仑仓允元公六兮内冈冗凤凶分切刈劝办勾勿匀化匹区卅升午卞厄厅历及友双反壬天太夫夭孔少尤尹尺屯巴币幻廿开引心忆戈户手扎支攴攵文斗斤方无日曰月木欠止歹殳毋比毛氏气水火爪父爻爿片牙牛犬王瓦肀艺见计订讣认讥贝车邓长闩队韦风乏"
char_wordtable(5)="且丕世丘丙业丛东丝主乍乎乐仔仕他仗付仙仝仞仟仡代令以仨仪仫们兄兰冉册写冬冯凸凹出击刊刍功加务劢包匆北匝卉半卟占卡卢卮卯厉去发古句另叨叩只叫召叭叮可台叱史右叵叶号司叹叻叼叽囚四圣处外央夯失头奴奶孕宁它宄对尔尕尻尼左巧巨市布帅平幼庀弁弗弘归必忉戊戋扑扒打扔斥旦旧未末本札术正母氐民氕永汀汁汇汉灭犯犰玄玉瓜甘生用甩田由甲申电疋白皮皿目矛矢石示礼禾穴立纠艽艾艿节讦讧讨让讪讫训议讯记轧边辽邗邙邛邝钅闪阡阢饥驭鸟龙"
char_wordtable(6)="丞丢乒乓乔乩买争亘亚交亥亦产仰仲仳仵件价任份仿企伉伊伍伎伏伐休众优伙会伛伞伟传伢伤伥伦伧伪伫佤充兆先光全共关兴再军农冰冱冲决凫凼刎刑划刖列刘则刚创劣动匈匠匡华协印危压厌厍吁吃各吆合吉吊同名后吏吐向吒吓吕吖吗囝回囟因囡团在圩圪圬圭圮圯地圳圹场圾壮夙多夷夸夹夺夼奸她好妁如妃妄妆妇妈字存孙宅宇守安寺寻导尖尘尥尧尽屹屺屿岁岂岌州巡巩帆师年并庄庆延廷异式弛当忏忖忙戌戍戎戏成托扛扣扦执扩扪扫扬收旨早旬旭旮旯曲曳有朱朴朵机朽杀杂权次欢此死毕氖氘氽汆汊汐汔汕汗汛汜汝江池污汤汲灯灰爷牝牟犴犷犸玎玑百祁竹米糸纡红纣纤纥约级纨纩纪纫缶网羊羽老考而耒耳聿肉肋肌臣自至臼舌舛舟艮色芄芊芋芍芎芏芑芒芗芝芨虍虫血行衣西观讲讳讴讵讶讷许讹论讼讽设访诀贞负轨达迁迂迄迅过迈邡邢那邦邪邬钆钇闫闭问闯阪阮阱防阳阴阵阶页饧驮驯驰齐"
char_wordtable(7)="两严串丽乱亨亩伯估伲伴伶伸伺似伽佃但位低住佐佑体何佗佘余佚佛作佝佞佟你佣佥佧克免兑兕兵况冶冷冻初删判刨利别刭助努劫劬劭励劲劳匣医卣卤即却卵县君吝吞吟吠吡吣否吧吨吩含听吭吮启吱吲吴吵吸吹吻吼吾呀呃呆呈告呋呐呒呓呔呕呖呗员呙呛呜囤囫园困囱围囵圻址坂均坊坌坍坎坏坐坑块坚坛坜坝坞坟坠声壳奁奂妊妍妒妓妖妗妙妞妣妤妥妨妩妪妫姊姒孚孛孜孝宋完宏寿尬尾尿局屁层岈岍岐岑岔岖岗岘岙岚岛岜希帏帐庇床庋序庐庑库应弃弄弟张形彤彷役彻忌忍忐忑忒志忘忡忤忧忪快忭忮忱忸忻忾怀怃怄怅怆我戒扭扮扯扰扳扶批扼找技抄抉把抑抒抓投抖抗折抚抛抟抠抡抢护报拒拟攸改攻旰旱时旷更杆杈杉杌李杏材村杓杖杜杞束杠条来杨杩极欤步歼每氙氚求汞汨汩汪汰汴汶汹汽汾沁沂沃沅沆沈沉沌沏沐沔沙沛沟没沣沤沥沦沧沩沪泐泛灵灶灸灼灾灿炀牡牢状犹狁狂狃狄狈玖玛甫甬男甸町疔疖疗皂盯矣矶社祀秀私秃究穷系纬纭纯纰纱纲纳纵纶纷纸纹纺纽纾罕羌肓肖肘肚肛肜肝肟肠良芈芘芙芜芟芡芤芥芦芩芪芫芬芭芮芯芰花芳芴芷芸芹芽芾苁苄苇苈苊苋苌苍苎苏苡苣虬补角言证诂诃评诅识诈诉诊诋诌词诎诏译诒谷豆豕豸贡财赤走足身轩轫辛辰迎运近迓返迕还这进远违连迟邑邮邯邰邱邳邴邵邶邸邹邺邻酉里针钉钊钋钌闰闱闲闳间闵闶闷阻阼阽阿陀陂附际陆陇陈陉韧饨饩饪饫饬饭饮驱驳驴鸠鸡麦龟"
char_wordtable(8)="丧乖乳事些亟享京佩佬佯佰佳佴佶佻佼佾使侃侄侈侉例侍侏侑侔侗供依侠侣侥侦侧侨侩侪侬兔兖其具典冼冽净凭凯函刮到刳制刷券刹刺刻刽刿剀剁剂劾势匦卑卒卓单卖卦卧卷卺厕叁参叔取呢呤呦周呱味呵呶呷呸呻呼命咀咂咄咆咋和咎咏咐咒咔咕咖咙咚咛咝哎囹固国图坡坤坦坨坩坪坫坭坯坳坶坷坻坼垂垃垄垅垆备夜奄奇奈奉奋奔妮妯妲妹妻妾姆始姐姑姓委姗孟孢季孤孥学宓宕宗官宙定宛宜宝实宠审尚居屈屉届岢岣岩岫岬岭岱岳岵岷岸岽岿峁峄巫帑帔帕帖帘帙帚帛帜幸底庖店庙庚府庞废建弥弦弧弩弪录彼往征徂径忝忠念忽忿态怂怊怍怏怔怕怖怙怛怜怡怦性怩怪怫怯怵怿戕或戗戽戾房所承抨披抬抱抵抹抻押抽抿拂拄担拆拇拈拉拊拌拍拎拐拓拔拖拗拘拙拚招拢拣拥拦拧拨择放斧斩於旺昀昂昃昆昊昌明昏易昔昕昙朊朋服杪杭杯杰杲杳杵杷杼松板构枇枉枋析枕林枘枚果枝枞枢枣枥枧枨枪枫枭柜欣欧武歧殁殴氓氛沓沫沭沮沱沲河沸油治沼沽沾沿泄泅泊泌泓泔法泖泗泞泠泡波泣泥注泪泫泮泯泱泳泷泸泺泻泼泽泾浅炅炉炊炎炒炔炕炖炙炜炝炬爬爸版牦牧物狍狎狐狒狗狙狞玟玢玩玫玮环现瓮瓯甙画甾畀畅疙疚疝疟疠疡的盂盱盲直知矸矽矾矿砀码祆祈祉秆秉穸穹空竺籴线绀绁绂练组绅细织终绉绊绋绌绍绎经绐罔罗者耵耶肃股肢肤肥肩肪肫肭肮肯肱育肴肷肺肼肽肾肿胀胁臾舍艰苑苒苓苔苕苗苘苛苜苞苟苠苤若苦苫苯英苴苷苹苻茁茂范茄茅茆茇茉茌茎茏茑茔茕茚虎虏虮虱表衩衫衬规觅视诓诔试诖诗诘诙诚诛诜话诞诟诠诡询诣诤该详诧诨诩责贤败账货质贩贪贫贬购贮贯转轭轮软轰迢迤迥迦迨迩迪迫迭迮述迳邾郁郄郅郇郊郎郏郐郑郓采金钍钎钏钐钒钓钔钕钗闸闹阜陋陌降限陔陕隶隹雨青非顶顷饯饰饱饲饴驵驶驷驸驹驺驻驼驽驾驿骀鱼鸢鸣黾齿"
char_wordtable(9)="临举亭亮亲侮侯侵便促俄俅俊俎俏俐俑俗俘俚俜保俞俟信俣俦俨俩俪俭修兹养冒冠剃削剌前剐剑勃勇勉勋匍南卸厘厚受变叙叛呲咣咤咦咧咨咩咪咫咬咭咯咱咳咴咸咻咽咿哀品哂哄哆哇哈哉哌响哏哐哑哒哓哔哕哗哙哚哜哝哞哟哪囿型垌垒垓垛垠垡垢垣垤垦垧垩垫垭垮垲垴城埏复奎奏契奕奖姘姚姜姝姣姥姨姹姻姿威娃娄娅娆娇娈娜孩孪客宣室宥宦宪宫封将尜尝屋屎屏峋峒峙峡峤峥峦差巷帝带帧帮幽庠庥度庭弈弭弯彖彦彪待徇很徉徊律後怎怒思怠急怨总怼恂恃恍恒恢恤恨恪恫恬恸恹恺恻恼恽战扁扃拜括拭拮拯拱拴拶拷拼拽拾持挂指按挎挑挖挝挞挟挠挡挢挣挤挥挪挺政故斫施既昝星映春昧昨昭是昱昴昵昶昼显曷朐枯枰枳枵架枷枸柁柃柄柏某柑柒染柔柘柙柚柝柞柠柢查柩柬柯柰柱柳柽柿栀栅标栈栉栊栋栌栎栏树歪殂殃殄殆殇残段毒毖毗毡氟氡氢泉泵泶洁洄洇洋洌洎洒洗洙洚洛洞津洧洪洫洮洱洲洳洵洹活洼洽派浃浇浈浊测浍济浏浑浒浓浔涎炫炭炮炯炱炳炷炸点炻炼炽烀烁烂烃爰牮牯牲牵狠狡狨狩独狭狮狯狰狱狲玲玳玷玻珀珂珈珉珊珍珏珐珑瓴甚甭畈畋界畎畏疣疤疥疫疬疮疯癸皆皇皈盅盆盈相盹盼盾省眄眇眈眉看眍眨矜矧矩砂砉砌砍砑砒研砖砗砘砚砜砭祓祖祗祚祛祜祝神祠祢禹禺秋种科秒秕秭穿窀突窃窆竖竽竿笃笈类籼籽绑绒结绔绕绗绘给绚绛络绝绞统缸罘罚美羿耍耐耔耷胂胃胄胆背胍胎胖胗胙胚胛胜胝胞胡胤胥胧胨胩胪胫脉舁舡舢舣茈茗茛茜茧茨茫茬茭茯茱茳茴茵茶茸茹茺茼荀荃荆荇草荏荐荑荒荔荚荛荜荞荟荠荡荣荤荥荦荧荨荩荪荫荬荭荮药莒莛虐虹虺虻虼虽虾虿蚀蚁蚂蚤衍衲衽衿袂袄袅要觇览觉訇诫诬语诮误诰诱诲诳说诵诶贰贱贲贳贴贵贶贷贸费贺贻赳赴赵趴轱轲轳轴轵轶轷轸轹轺轻迷迸迹追退送适逃逄逅逆选逊郗郛郜郝郡郢郦郧酊酋重钙钚钛钜钝钞钟钠钡钢钣钤钥钦钧钨钩钪钫钬钭钮钯闺闻闼闽闾阀阁阂陛陟陡院除陧陨险面革韭音顸项顺须飑飒食饵饶饷饺饼首香骁骂骄骅骆骇骈骨鬼鸥鸦鸨鸩"
char_wordtable(10)="乘亳俯俱俳俸俺俾倌倍倏倒倔倘候倚倜借倡倥倦倨倩倪倬倭倮债值倾偌健党兼冢冤冥凄准凇凉凋凌剔剖剜剞剡剥剧勐匪匿卿厝原叟哥哦哧哨哩哭哮哲哳哺哼哽哿唁唆唇唉唏唐唑唔唛唠唢唣唤唧啊圃圄圆垸埂埃埋埒埔埕埘埙埚壶夏套奘奚姬娉娌娑娓娘娟娠娣娥娩娱娲娴婀孬宰害宴宵家宸容宽宾射屐屑展屙峨峪峭峰峻崂崃席帱座弱徐徒徕恁恋恐恕恙恚恝恣恧恩恭息恳恶悃悄悌悍悒悔悖悚悛悝悟悦悭悯扇拳拿挈挚挛挨挫振挹挽捂捃捅捆捉捋捌捍捎捏捐捕捞损捡换捣效敉敌敖斋料旁旃旄旅旆晁晃晋晌晏晒晓晔晕晖晚晟朔朕朗柴栓栖栗栝校栩株栲栳样核根格栽栾桀桁桂桃桄桅框案桉桊桌桎桐桑桓桔桕桠桡桢档桤桥桦桧桨桩梃梆梢梧梨殉殊殷毙毪氤氦氧氨氩泰流浆浙浚浜浞浠浣浦浩浪浮浯浴海浸浼涂涅消涉涌涑涓涔涕涛涝涞涟涠涡涣涤润涧涨涩烈烊烘烙烛烟烤烦烧烨烩烫烬热爱爹特牺狳狴狷狸狺狻狼猁猃玺珙珞珠珥珧珩班珲琊瓞瓶瓷畔留畚畛畜疰疱疲疳疴疸疹疼疽疾痂痃痄病症痈痉皋皱益盍盎盏盐监眙眚真眠眢眩砝弢砟砣砥砧砩砬砰破砷砸砹砺砻砼砾础祟祥祧祯离秘租秣秤秦秧秩秫积称窄窈窍站竞笄笆笊笋笏笑笔笕笫粉粑紊素索紧绠绡绢绣绥绦继绨缺罟罡罢羔羞翁翅耄耆耕耖耗耘耙耸耻耽耿聂胭胯胰胱胲胳胴胶胸胺胼能脂脆脊脍脎脏脐脑脒脓臬臭致舀舐舨航舫般舭舯舰舱艳荷荸荻荼荽莅莆莉莎莓莘莜莞莠莨莩莪莫莰莱莲莳莴莶获莸莹莺莼莽虑虔蚊蚋蚌蚍蚓蚕蚜蚝蚣蚧蚨蚩蚪蚬衄衮衰衷衾袁袍袒袖袜袢被觊请诸诹诺读诼诽课诿谀谁谂调谄谅谆谇谈谊豇豹豺贼贽贾贿赀赁赂赃资赅赆赶起趵趸趿躬軎轼载轾轿辁辂较辱逋逍透逐逑递途逖逗通逛逝逞速造逡逢逦邕部郫郭郯郴郸都酌配酎酏酐酒釜钰钱钲钳钴钵钶钷钸钹钺钻钼钽钾钿铀铁铂铃铄铅铆铈铉铊铋铌铍铎阃阄阅阆陪陬陲陴陵陶陷隼隽难顼顽顾顿颀颁颂颃预饽饿馀馁骊骋验骏高髟鬯鬲鸪鸫鸬鸭鸯鸱鸲鸳鸵"
char_wordtable(11)="龛鸶龀乾偃假偈偎偏偕做停偬偶偷偻偾偿傀兜兽冕减凑凰剪副勒勖勘匏匐匙匮匾厢厣厩唪唬售唯唰唱唳唷唼唾唿啁啃啄商啉啐啕啖啜啡啤啥啦啧啪啬啭啮啵啶啷啸喏喵圈圉圊埝域埠埤埭埯埴埸培基埽堀堂堆堇堋堍堑堕堵够奢娶娼婆婉婊婕婚婢婧婪婴婵婶孰宿寂寄寅密寇尉屠崆崇崎崔崖崛崞崤崦崧崩崭崮巢帷常帻帼庳庵庶康庸庹庾廊弹彗彩彬得徘徙徜恿悉悠患您悫悬悱悴悸悻悼情惆惊惋惕惘惚惜惝惟惦惧惨惬惭惮惯戚戛扈挲捧捩捭据捱捶捷捺捻掀掂掇授掉掊掎掏掐排掖掘掠探接控推掩措掬掭掮掳掴掷掸掺掼揶敏救敕教敛敝敢斛斜断旋旌旎族晗晡晤晦晨曹曼望桫桴桶桷梁梅梏梓梗梦梭梯械梳梵检棂欲欷殍殒殓毫氪涪涫涮涯液涵涸涿淀淄淅淆淇淋淌淑淖淘淙淝淞淠淡淤淦淫淬淮深淳混淹添清渊渌渍渎渐渑渔渖渗渚渠烯烷烹烽焉焊焐焓焕焖焘爽牾牿犁猊猎猓猕猖猗猛猜猝猞猡猪猫率球琅理琉琏琐瓠甜略畦疵痊痍痒痔痕痖皎皑皲盒盔盖盗盘盛眦眭眯眵眶眷眸眺眼着睁矫砦硅硇硌硎硐硒硕硖硗硭票祭祷祸秸移秽稆窑窒窕竟章笙笛笞笠笤笥符笨笪第笮笱笳笸笺笼笾筇粒粕粗粘粜粝累绩绪绫续绮绯绰绱绲绳维绵绶绷绸绺绻综绽绾绿缀缁缍羚羝羟翊翌翎耜聃聆聊聋职聍胬脖脘脚脞脬脯脱脲脶脸舂舳舴舵舶舷舸船舻艴菀菁菅菇菊菌菏菔菖菘菜菝菟菠菡菥菩菪菰菱菲菸菹菽萁萃萄萆萋萌萍萎萏萑萘萜萝萤营萦萧萨萸著虚蚯蚰蚱蚴蚵蚶蚺蛀蛄蛆蛇蛉蛊蛋蛎蛏衅衔袈袋袤袭袱袷袼裆裉觋觖谋谌谍谎谏谐谑谒谓谔谕谖谗谘谙谚谛谜谝豉豚象赇赈赉赊赦赧趺趼趾跃跄距躯辄辅辆逭逮逯逵逶逸逻郾鄂鄄酗酚酝酞野铐铑铒铕铖铗铘铙铛铜铝铞铟铠争铣铤铥铧铨稔铫铬铭铮铯铰铱铲铳铴铵银铷阈阉阊阋阌阍阎阏阐隅隆隈隋隍随隐隗雀雩雪颅领颇颈馄馅馆馗骐骑骒骓骖鸷鸸鸹鸺鸽鸾鸿鹿麸麻黄龚"
char_wordtable(12)="亵傅傈傍傣傥傧储傩傲凿剩割募博厥厦厨啻啼啾喀喁喂喃善喇喈喉喊喋喑喔喘喙喜喝喟喧喱喳喷喹喻喽喾嗖嗟堙堞堠堡堤堪堰塄塔壹奠奥婷婺婿媒媚媛媪嫂孱孳富寐寒寓尊就属屡崴崽崾嵇嵋嵌嵘嵛嵝嵫嵬嵯巯巽帽幂幄幅弑强弼彘彭御徨循悲惑惠惩惫惰惴惶惹惺愀愉愎愕愠愣愤愦愧慌慨戟戡戢扉掌掣掰掾揄揆揉揍揎描提插揖揞揠握揣揩揪揭揲援揸揽揿搀搁搂搅搓搔搜搭搽摒敞散敦敬斌斐斑斯普景晰晴晶晷智晾暂暑曾替最朝期棉棋棍棒棕棘棚棠棣森棰棱棵棹棺棼椁椅椋植椎椐椒椟椠椤椭椰楗楮榔欹欺款殖殚殛毯毳毵毽氮氯氰淼渝渡渣渤渥温渫渭港渲渴游渺湃湄湍湎湓湔湖湘湛湟湫湮湾湿溃溅溆溉溲滁滋滑滞焙焚焦焯焰焱然煮牌牍犀犄犊犋犍猢猥猩猬猱猴猸猹猾琚琛琢琥琦琨琪琬琮琰琳琴琵琶琼瑛瓿甥甯番畲畴疏痘痛痞痢痣痤痦痧痨痪痫登皓皖皴睃睇睐睑矬短硝硪硫硬确硷祺禄禅禽宵稃程稍税窖窗窘窜窝竣童竦筅等筋筌筏筐筑筒答策筘筚筛筝筵粞粟粢粤粥粪紫絮絷缂缃缄缅缆缇缈缉缋缌缎缏缑缒缓缔缕编缗缘缙羡翔翕翘耋耠聒联脔脾腆腈腊腋腌腑腓腔腕腙腚腱腴舄舒舜舾艇萱萼落葆葑葙葚葛葜葡董葩葫葬葭葱葳葵葶葸葺蒂蒇蒈蒉蒋蒌蒎蛐蛑蛔蛘蛙蛛蛞蛟蛤蛩蛭蛮蛰蛱蛲蛳蛴蜒蜓街裁裂装裎裒裕裙裢裣裤裥覃觌觚觞詈谟谠谡谢谣谤谥谦谧貂赋赌赍赎赏赐赓赔赕趁趄超越趋跆跋跌跎跏跑跖跗跚跛跞践辇辈辉辊辋辍辎辜逼逾遁遂遄遇遍遏遐遑遒道遗酡酢酣酤酥釉释量铸铹铺铼铽链铿销锁锂锃锄锅锆锇锈锉锊锋锌锍锎锏锐锑锒锓锔锕阑阒阔阕隔隘隙雁雄雅集雇雯雳靓韩颉颊颌颍颏飓飧飨馇馈馊馋骗骘骚骛鱿鲁鲂鹁鹂鹃鹄鹅鹆鹇鹈黍黑黹鼋鼎"
char_wordtable(13)="催傺傻像剽剿勤叠嗄嗅嗉嗌嗍嗑嗒嗓嗔嗜嗝嗡嗣嗤嗥嗦嗨嗪嗫嗬嗯嗲嗳嗵嗷嘟塌塍塑塘塞塥填塬墓媲媳媵媸媾嫁嫉嫌嫒嫔嫫寝寞尴嵊嵩嵴幌幕廉廒廓彀徭微想愁愆愈愍意愚感愫慈慊慎慑戤戥搋搌搏搐搛搞搠搡搦搪搬携摁摄摅摆摇摈摊摸敫数斟新旒暄暇暌暖暗椴椹椽椿楂楔楚楝楞楠楣楦楫楱楷楸楹楼榀概榄榆榇榈榉榘槌槎槐歃歆歇歌殿毁毂毹氲溏源溘溜溟溢溥溧溪溯溱溴溶溷溺溻溽滂滇滏滓滔滗滚滟滠满滢滤滥滦滨滩漓漠漭煅煊煌煎煜煞煤煦照煨煲煳煸煺牒犏献猷猿獒瑁瑕瑗瑙瑚瑜瑞瑟瑰甄畸畹痰痱痴痹痼痿瘀瘁瘃瘅瘐皙盟睚睛睡睢督睥睦睨睫睬睹瞄矮硼碇碉碌碍碎碑碓碗碘碚碛碜碰禀禁禊福稔稗稚稞稠稣窟窠窥窦筠筢筮筱筲筷筹筻签简粮粱粲粳缚缛缜缝缟缠缡缢缣缤罨罩罪置署群羧耢聘肄肆腠腥腧腩腭腮腰腹腺腻腼腽腾腿舅艄艉蒗蒙蒜蒡蒯蒲蒴蒸蒹蒺蒽蒿蓁蓄蓉蓊蓍蓐蓑蓓蓖蓝蓟蓠蓣蓥蓦蓬虞蛸蛹蛾蜂蜃蜇蜈蜉蜊蜍蜕蜗蜣衙裔裘裟裨裰裱裸裼裾褂褚觎觜解觥触訾詹誉誊谨谩谪谫谬豢貅貉貊赖趑趔跟跣跤跨跪跫跬路跳跷跸跹跺跻躲辏辐辑输辔辞辟遘遛遢遣遥遨鄙鄞鄢鄣酩酪酬酮酯酰酱鉴锖锗锘错锚锛锝锞锟锡锢锣锤锥锦锨锩锪锫锬锭键锯锰锱阖阗阙障雉雍雎雏零雷雹雾靖靳靴靶韪韫韵颐频颓颔颖飕馍馏馐骜骝骞骟骰骱髡魁魂鲅鲆鲇鲈鲋鲍鲎鲐鹉鹊鹋鹌鹎鹏鹑麂鼓鼠龃龄"
char_wordtable(14)="龅龆僖僚僦僧僬僭僮僳儆兢凳劁劂厮嗽嗾嘀嘁嘈嘉嘌嘎嘏嘘嘛嘞嘣嘤嘧塾墁境墅墉墒墙墚夤夥嫖嫘嫜嫠嫡嫣嫦嫩嫱孵察寡寤寥寨屣嶂幔幛廑廖弊彰愿慕慝慢慵慷截戬搴搿摔摘摞摧摭摹摺撂撄撇撖敲斡旖旗暝暧暨榍榕榛榜榧榨榫榭榱榴榷榻槁槊槔槛槟槠槭模歉殡毓滴滹漂漆漉漏演漕漤漩漪漫漯漱漳漶漾潆潇潋潍潢潴澉煽熄熊熏熔熘熙熬犒獍獐瑭瑶瑷璃甍疑瘊瘌瘕瘗瘘瘙瘟瘥瘦瘩睽睾睿瞀瞅瞍碟碡碣碥碧碱碲碳碴碹磁磋禚稳窨窬窭竭端箅箍箐箔箕算箜箝管箢箦箧箨箩箪箫箬箸粹粼粽精糁綦綮缥缦缧缨缩缪缫罂罱罴翟翠翡翥耥聚肇腐膀膂膈膊膏膑膜臧舆舔舞艋蓰蓼蓿蔌蔑蔓蔗蔚蔟蔡蔫蔷蔸蔹蔺蔻蔼蔽蕖蜀蜘蜚蜜蜞蜡蜢蜥蜩蜮蜱蜴蜷蜻蜾蜿蝇蝈蝉螂裳裴裹褊褐褓褙褛褡褪觏觫誓谭谮谯谰谱谲豪貌赘赙赚赛赫跽踅踉踊踌辕辖辗辣遭遮鄯鄱酲酴酵酶酷酸酹酽酾酿銎銮锲锴锵锶锷锸锹锺锻锼锾锿镀镁镂镄镅阚隧雌雒需霁霆静靼鞅韬韶颗馑馒骠骡骢骶骷髦魃魄魅鲑鲒鲔鲕鲚鲛鲜鲞鲟鹕鹗鹘鹚鹛鹜麽鼐鼻"
char_wordtable(15)="龇龈僵僻儇儋凛劈劐勰嘬嘭嘱嘲嘶嘹嘻嘿噌噍噎噔噗噘噙噜噢噶墀增墟墨墩嬉寮履屦嶙嶝幞幡幢廛影徵德慧慰憋憎憔憧憨憬懂戮摩撅撑撒撕撙撞撤撩撬播撮撰撵撷撸撺擒敷暮暴暹槲槽槿樊樗樘樟横樯樱橄橡橥毅滕潘潜潦潭潮潲潸潺潼澄澈澌澍澎澜澳熟熠熨熳熵牖獗獠瑾璀璁璇璋璎璜畿瘛瘠瘢瘤瘪瘫瘼瞌瞎瞑瞒瞢碾磅磉磊磐磔磕磙稷稹稻稼稽稿窳箭箱箴篁篆篇篌篑篓糅糇糈糊糌糍缬缭缮缯羯羰翦翩耦耧聩聪膘膛膝膣艏艘蔬蕃蕈蕉蕊蕙蕞蕤蕨蕲蕴蕺虢蝌蝎蝓蝗蝙蝠蝣蝤蝥蝮蝰蝴蝶蝻蝼蝽蝾螋褒褥褫褴觐觑觯谳谴谵豌豫赜赭趟趣踏踔踝踞踟踢踣踩踪踬踮踯踺躺辘遴遵醅醇醉醋醌鋈镆镇镉镊镌镍镎镏镐镑镒镓镔霄震霈霉靠靥鞋鞍鞑鞒题颚颛颜额飘餍馓馔骣骸骺骼髫髯魇鲠鲡鲢鲣鲤鲥鲦鲧鲨鲩鲫鹞鹣鹤麾黎"
char_wordtable(16)="齑龉龊儒冀凝劓嘴噤器噩噪噫噬噱噻噼嚆圜墼壁壅嬖嬗嬴寰廨廪徼憝憩憷憾懈懊懒懔撼擀擂擅操擎擐擗擞整斓暾樨樵樽樾橇橐橘橙橛橱橹橼檎檠歙殪氅氆氇潞澡澧澶澹激濂濉濑濒熹燃燎燔燕燠燧犟獬獭璞瓢甏甑瘭瘰瘳瘴瘵瘸瘾瘿癀癃盥瞟瞠瞥瞰磨磬磲磺禧穆穑窿篙篚篝篡篥篦篪篮篱篷糕糖糗糙缰缱缲缳缴罹羲翮翰翱耨耩耪聱膦膨膪膳臻蕹蕻蕾薄薅薇薏薛薜薤薨薪薮薯螃螅螈融螓螗螟螨螭螯蟆蟒衡褰褶赝赞赠踱踵踹踽蹀蹁蹂蹄蹉辙辚辨辩遽避邀邂鄹醍醐醑醒醚醛錾镖镗镘镙镛镜镝镞镟隰雕霍霎霏霓霖靛鞔鞘颞颟颠颡飙飚餐髭髹髻魈魉鲭鲮鲰鲱鲲鲳鲴鲵鲶鲷鲸鲺鲻鹦鹧鹨鹾麇麈黉黔默"
char_wordtable(17)="鼽儡嚅嚎嚏嚓壑壕嬲嬷孺嶷徽懋懑懦戴擘擢擤擦曙朦檀檄檐檑檗檩檬濞濠濡濮濯燥燮爵獯璐璨璩甓疃癌癍皤瞧瞩瞪瞬瞳瞵磴磷礁礅穗篼篾簇簋簌簏簖簧糜糟糠縻繁繇罄罅罾羁翳翼膺膻臀臁臂臃臆臊臌艚薰薷薹藁藉藏藐藓螫螬螳螵螺螽蟀蟊蟋蟑蟓蟥襁襄觳謇豁豳貔貘赡赢蹇蹈蹊蹋蹑蹒辫邃邈醢醣鍪镡镢镣镤镥镦镧镨镩镪镫隳霜霞鞠馘骤髀髁魍魏鲼鲽鳃鳄鳅鳆鳇鳊鳋鹩鹪鹫鹬麋黏黛黜黻鼢鼾龋"
char_wordtable(18)="龌龠冁嚣彝懵戳曛曜檫瀑燹璧癔癖癜癞瞻瞽瞿礓礞簟簦簪糨翻艟藕藜藤藩蟛蟠蟪蟮襟覆謦蹙蹦蹩躇邋醪鎏鏊镬镭镯镰镱雠鞣鞫鞭鞯颢餮馥髂髅鬃鬈鳌鳍鳎鳏鳐鹭鹰"
char_wordtable(19)="黝黟黠鼬嚯孽巅攀攉攒曝瀚瀛瀣爆璺瓣疆癣礤簸簿籀籁缵羸羹艨藻藿蘅蘑蘧蟹蟾蠃蠊蠓蠖襞襦警谶蹬蹭蹯蹰蹲蹴蹶蹼蹿酃醭醮醯鏖镲霪霭靡鞲鞴颤骥髋髌鬏魑鳓鳔鳕鳖鳗鳘鳙鹱麒麓"
char_wordtable(20)="麴黢黼鼗嚷嚼壤孀巍攘曦瀵瀹灌獾瓒矍籍糯纂耀蘖蘩蠕蠛譬躁躅酆醴醵镳霰颥馨骧鬓魔鳜鳝鳞"
char_wordtable(21)="鳟黥黧黩黪鼍鼯夔曩灏爝癫礴禳羼蠡蠢赣躏醺鐾露霸霹颦髓"
char_wordtable(22)="鳢麝黯鼙囊懿氍瓤穰耱蘸蘼躐躔镶"
char_wordtable(23)="霾饔饕髑鬻鹳麟攥攫癯罐趱躜颧"
char_wordtable(24)="鬟鼷鼹齄灞矗蠲蠹衢襻躞鑫"
char_wordtable(25)="鬣馕囔戆攮纛"
char_wordtable(26)="蠼爨"
wordnum_i=0
wordnum_j=0
wordnum_k=0
for wordnum_i=1 to Len(my_char_word)
temp_wordnum=Mid(my_char_word,wordnum_i,1)
for wordnum_j=1 to 26
if instr(1,char_wordtable(wordnum_j),temp_wordnum)>0 then
wordnum_k=wordnum_k+wordnum_j
exit for
end if
next
next
char_wordnum=wordnum_k
End Function
在线泡点脚本



电影或电视中经常可见到一些字幕或图片的动态变化特技,在制作多媒体教学软件或广告宣传等多媒体演示文档时,也常常需要用到一些图文的动态变化效果

四篇(共六篇):
大家好,昨天我休息了一天,所以今天写第4章:循环结构

  我们先来看一道题:商场进行每日结算,要求累加出今天的营业额,每次输入一个数,这道题其实很简单,但就我们现在学

过的知识要完成这道题相当麻烦,我们来分析一下.首先,我们需要知道买卖的次数,这样才能控制输入的次数,但是,这种设

计是非常低效的,每天都要重新设计程序.假定今天进行了5次交易,以下是源程序:

dimsum
sum=0'初始化变量
sum=sum+int(inputbox("请输入交易额"))
'sum=sum+x 这种形式是把本身的值取出来,进行一次运算,再放回本身,这种方法很有用处
'这里使用了函数嵌套,把inputbox的返回值直接传给int函数,转化成整数,下同
sum=sum+int(inputbox("请输入交易额"))
sum=sum+int(inputbox("请输入交易额"))
sum=sum+int(inputbox("请输入交易额"))
sum=sum+int(inputbox("请输入交易额"))
msgbox(sum)

  看到了吗,我通过把计算过程复制了5遍才设计好了程序,这种程序在汽车交易所等交易次数少的地方还能凑合着用,如果

放到超市岂不是要复制,粘贴几千遍?我们今天讲的内容就可以克服这种缺陷,首先,我们来讲以下Do...Loop语句.

  do...loop的结构看上去非常简单,就是:do...loop,仅此而已,这个结构不断执行do和loop之间的语句(学名叫:循环体),
永不停止.举个例子来说:

do
msgbox("这个信息会不断重复出现,要停止程序请使用任务管理器(Ctrl+Alt+Del)中止wscript进程")
loop

  运行这个程序,当你点销掉一个对话框马上会出来另一个,你永远点不完,总有下一个.谁会运行这样的程序?除非是给

别人捣乱(我就干过这种事),所以在do..loop结构中还有一个语句:exitdo,这个语句将终止循环,跳到loop后面的语句继续

执行.据个例子来说:

dima'注意:常量不需要在dim里面声明,否则会引发错误
constpass="123456"'这是一个字符串请用""包裹起来.设定密码为常量,不可变更
do
a=inputbox("请输入密码")
ifa=passthen
msgbox("密码校验成功")
exitdo
endif
loop

  这个程序会一直不停的问你密码,知道你输入了正确的密码为止.(if可以嵌套在另一个if当中,也可以嵌套在循环体当中

,所以一定要用缩进,来分清楚程序的各个部分).这个程序是很经典的,早期的程序都是这么做的.但是我们是Hacker,所以

我们了解系统的安全性,这种无限次认证程序很容易被穷举破解,我们要来限定认证的次数.修改程序如下

dima,ctr
ctr=0'设置计数器
constpass="pas123_"'上面的那个是弱密码,这次改的强一点
do
ifctr=3then
msgbox("已经达到认证上限,认证程序关闭")
exitdo
else
a=inputbox("请输入密码")
ifa=passthen
msgbox("认证成功")
msgbox("(你可以在这里加一段成功后得到的信息)")
exitdo
else
ctr=ctr+1'如果密码出错就增加一次错误认证计数
msgbox("认证出错,请检查密码")
endif
endif
loop

  运行这个程序试试看,当你出了3此错误以后,就会停止再次询问密码,关闭程序.telnet认证用来限制次数的程序与此大

同小异.要注意的是嵌套的if语句,清仔细读一下这个程序,可能比较难懂,也请你试着自己设计一下类似的程序.

  其实,要在do...loop加上验证的功能,并不一定要用if,我们可以直接利用do.我来介绍一下while关键字,while可以放
在do或者是loop后面,然后再接一个表达式,当表达式的值为true的时候(表达式成立),才运行循环体.我们来看一下修改后的
程序"

dima,ctr
ctr=0
constpass="pas123_"
dowhilectr<3
a=inputbox("请输入密码")
ifa=passthen
msgbox("认证成功")
msgbox("(你可以在这里加一段成功后得到的信息)")
exitdo
else
ctr=ctr+1'如果密码出错就增加一次错误认证计数
msgbox("认证出错,请检查密码")
endif
loop

  这样实现的功能和上一个例子完全一样,我们再来看看把while放在loop后面:

dima,ctr
ctr=0
constpass="pas123_"
do
a=inputbox("请输入密码")
ifa=passthen
msgbox("认证成功")
msgbox("(你可以在这里加一段成功后得到的信息)")
exitdo
else
ctr=ctr+1'如果密码出错就增加一次错误认证计数
msgbox("认证出错,请检查密码")
endif
loopwhilectr<3

  功能是一样的,为什么要放在loop后面呢?你把ctr的值改成3就知道了,while在do后面的程序会直接退出,而在loop后面

还会允许一次认证,到了loop才结束.和while相反的是until,用法和while一样,不过他只有当后面的表达式的值为false(表

达式不成立)的时候才执行循环体,请自己试验一下

  ok,我们来看另外一种循环结构,for....next,这种循环结构是基于计数的,也是在编程中最常见到的循环结构.

dimi
fori=0to5
msgbox(i)
next

  看到了吗?每次输出的i都是递增的,但我们没有明确指出i要递增,当i达到5的时候,循环就结束了,因为由0开始,所以

循环体执行了6次,这一点很重要,大部分东西都是从0开始而不是1.这个程序也可以写成

do的形式:

dimi
i=0
dowhilei<5
msgbox(i)
i=i+1'因为do不能自动计数,必须手动加
loop

  怎么样,还是for比较好用吧.for在编程中很有用途,我们再举一个例子,顺便讲一下嵌套循环.

dimi,j
fori=1to9
fori=1to9
str=str&i*j&""'&是和并字符串的符号
next'每个next对应一个for
next

  看看运行结果,是否令你会想起小学时代的数学老师(丑陋的嘴脸).要注意,这里有一个"大"的for,和一个小的for,当

小的for执行完一个周期以后,大的for才执行一次(换句话说,大的for执行一次,小的要执行9次),所以一共执行了九九八十

一次.在大的for里可以不仅仅是一个小的for,也可以加上另外的语句.我们来修改一下源程序:

dimi,j
fori=1to9
fori=1to9
str=str&i*j&""
next'每个next对应一个for
str=str&vbCrlf'vbCrlf相当于键盘上的回车键,因为你不能在键盘上输入,所以系统定义了一个默认的常量
next

  这次运行完成以后,输出结果按照乘数进行了分割,每小for运行完一次,就换一行(通过vbcrlf).

  这次的内容对菜鸟可能比较难懂,掌握的办法只有一个:多实践.另外,我在论坛看到很多人还是问:"VBScript要用什么工

具编?"我就很气愤,我在第一篇里面已经说明:用记事本编辑源代码,然后保存为以.vbs为扩展名的程序就可以了,请大家不要

再问.另外,国产的一种垃圾软件"超级X霸"抢占了vbs这个扩展名,请把那个垃圾卸载掉.

  我们总结一下:

要点:

1)do..loop和exitdo的用法

2)while当表达式true的时候执行循环体,until反之

3)for...next是计数循环,每次执行计数器递加

4)嵌套循环的作用和写法

4.5)&用于连接字符串

5)vbCrLf相当于键盘上的回车键


作业:

1)在我国的数学经典著作"九章算术"中有这样一道题:百钱买百鸡,公鸡5钱一只,母鸡3钱一只,小鸡1钱2只(这个数据我是参

考一本编程书的,但我记得是公3,母1,小1钱3只?不管了,就按照书上得来吧)求得是能有多少种办法买这些鸡.如果看不懂的

话我用大白话说说:有人要去买鸡,用100块钱正好买了100只鸡,价格如下:公:5$,母:3$,小:1$for2,让你求一共多少种卖

法(公母小怎么搭配).请用循环解决这个问题.

ps:今天要去移民局办事,所以文章写的很仓促.大部分代码都没有实验,请大家帮我找错.另外,上次的作业大家在论坛应该

看到了,我就不重复答案了,不知道大家喜欢做这种题,还是以前那种比较简单的?
如果希望打开或链接具有备注字段的FoxPro数据库,则应确保备注文件与数据库文件存放在同一目录下

数据库的文件名为Contacts.mdb,内有一个Contacts表

第三篇(共六篇):
首先,我来解决一下上次课程的几个疑问

第一,那个余数问题,16/5=3...1,是因为我改过前面的部分,后面的忘了改了,不好意思.

第二,请看一下程序清单:

1)
Dima,b,c
a=inputbox("a是:","输入半径")
b=Inputbox("b是:","输入半径")
c=a*2+b*2
Msgbox(c)
这个输入1、2时是6

2)
Dima,b,c
a=inputbox("a是:","输入半径")
b=Inputbox("b是:","输入半径")
c=(a+b)*2
Msgbox(c)
这个输入1、2时是24

 为什么会不一样呢?在数学上c=(a+b)*2和c=a*2+b*2是等价的,在VBS中也是如此.问题出在"+"上,在VBS中,+不仅仅是加号的意思还表示把两个字符串连接起来,例如"Hello"+"World"="HelloWorld"haveyouunderstood?你还记得InoutBox函数的返回值吗?是字符串!这就看出问题了吧,在编程中"1"不等于(<>)1,"1"是一个字符,而1是一个数,所以a,b都是字符串变量,"1"+"2"="12",这就好像我们小时跟伙伴开玩笑问他们1+1=?一样,我们总是笑着说"错啦,应该是11".但为什么,a可以*2却不发生错误呢?这时VBS比较智能的一个表现,如果这个字符串的内容是一个数且对他进行数学运算,则把字符串强制转换成数参与运算,如果字符串代表一个数,但不参加数学运算,而是参加字符串运算(合并)则当作字符串处理,所以你看到a+b=12,这时候a+b的结果(12)是一个字符串,当它要乘以2的时候就被强制转换成了数字12,这样我就得到了结果24.

  怎么修改这个程序呢?我们需要用到另一个内建的函数:int,int函数的功能是将输入值转化成整数值,我们这样修改:

c=(int(a)+int(b))*2

  这个意思就是把a作为参数传递给int函数,int函数就会返回那个整数(你的输入值),然后让返回值参与运算,这样就得到了正确答案.所以,以后如果你用的是inputbox函数的话,最好用int语句加工一下:比如c=int(c)'c是你自己的变量

  大家是不是觉得这个课程有点枯燥,呵呵,变量和运算符部分的确是这样的,不过多多练习也就好了,这次,我们写写真正好玩的东西:流程控制语句.这个部分开始才是真正的编程.

  首先介绍判断结构.

  在此之前,我们先介绍一种简单的变量类型:布尔值(Boolean),这种变量只有两个可能值:True,Flase,即真或假.这种变量在某些情况下很有用(比如"开关").我们定义一个bool变量的方法和其他变量一样,赋值也一样,例如:

dima,b
a=true
b=false

  注意,true和"true"是不一样的,"true"是字符串,true是布尔值,千万不能混淆.

  回到if语句上来,我们先来看看简化版的if语句:if判断式then语句体 我们来看一个例子:

dima,b
a=12
b=13
ifb>athenmsgbox("B大于A")

  我们只看最后一行,a>b这个式子(表达式)有一个返回值,是bool型的.因为这个式子只有两种可能:b大于a,b不大于a,所以这个式子也只有两种可能性,即真或者假.if语句判断这个表达式的返回值是真还是假,如果是真(true)则执行then后面的语句,如果是假,则不执行,你把a的值改成14看看还会不会弹出对话框?

  当我们要在判断之后执行多行语句怎么办呢,我们需要用语句块来解决,在这里可以叫块if

dima,b
a=12
b=13
ifa<bthen
msgbox("A小于B")
msgbox("B大于A")
endif

  两个msgbox函数夹在if和endif之间,这个部分就是语句块,块里的每一条语句之前请空出4--8(一个<Tab>键)个格,这不是必需的,但是是一个好习惯,以便看清楚程序的结构.这样我们就能运行多于一个的语句,请注意if...then...endif这三个关键部分不要掉了.OK,我出一个题,输入一个数,如果小于100就输出"错误",如果大于100就输出"正确",我这里有两个程序版本:

dima
a=inputbox("请输入一个大于100的数")
a=int(a)'inputbox返回的是字符串,我们把他变成整数:)
ifa>100thenmsgbox("正确")
ifa<100thenmsgbox("错误")

还有一个更简单的

dima
a=inputbox("请输入一个大于100的数")
a=int(a)'inputbox返回的是字符串,我们把他变成整数
ifa>100then
msgbox("正确")
else
msgbox("错误")
endif

  看到多了一个else了吧,else的作用就是当要判断的表达式为false时执行的.这样程序就可以处理两种不同的情况了.不要忘了用endif结尾

  嘿嘿,我是变态者,现在我要你处理三种情况,<100,=100,>100,还要写在一个if结构里,你怎么办,我给你答案:

dima
a=inputbox("请输入一个大于100的数")
a=int(a)'inputbox返回的是字符串,我们把他变成整数
ifa>100then
msgbox("正确")
elseifa=100then
msgbox("老大,你耍我?")
else
msgbox("错误")
endif

  这次输入100看看,是什么?elseif语句可以在if结构中多次出现,以灵活判断不同的情况(如果你要判断得太多,就请使用"选择结构",过会儿就讲),当所有elseif都处理完了,而没有符合情况的时候再执行else中的语句.另一个例子:

Dima,b,c,d
a=inputbox("a是:","输入半径")
b=Inputbox("b是:","输入半径")
d=Inputbox("答案:","输入答案")

c=a*2+b*2'这里没有问题,会自动转换
ifd=cthen
Msgbox("你好聪明")
else
Msgbox("你好猪头自己的题还不会!")
endif

  再看看这个,无论你回答得多么正确你都是猪头,哈哈,不是我耍你,还是文章开始时候的inputbox的返回类型在耍你,d是inputbox的返回值,他是一个字符串,而c是一次整数计算的结果,他是一个整数.一个字符串无论如何也不等于一个整数,尽管他们字面上是一样的:"8"<>(不等于号)8所以if的判断式的值永远是false,总是执行else部分的语句.我们可以这么修改

Dima,b,c,d
a=inputbox("a是:","输入半径")
b=Inputbox("b是:","输入半径")
d=Inputbox("答案:","输入答案")
d=int(d)
'在这里我们取出了d的值,变成整数,在放回"d"这个盒子里
c=a*2+b*2
ifd=cthen
Msgbox("你好聪明")
else
Msgbox("你好猪头自己的题还不会!")
endif

  这样就成功了.这也是Inputbox函数的一个讨厌的地方,没办法,vbs没有其他好的输入方式了.

  说到if,我们不得不说一说逻辑运算符,今天介绍两种,"and"和"or"学会了if语句之后,我举一个例子,你一看就明白了.

dima,b
a=inputbox("输入一个数>10")
b=inputbox("输入另一个数>10")
a=int(a)
b=int(b)
ifa>10andb>10then
msgbox("正确")
else
msgbox("错误")
endif

  这段程序让你输入两个值,必须都大于10,只要有一个不大于,就输出错误

dima,b
a=inputbox("输入一个数>10")
b=inputbox("输入另一个数>10")
a=int(a)
b=int(b)
ifa>10orb>10then
msgbox("正确")
else
msgbox("错误")
endif


  这段程序让你输入两个值,只要有一个大于10,就返回成功.其实and和or很好理解,我读"ifa>10orb>10then"这一句,用华语是这样:"如果a大于10或者b大于10,那么...".这样是不是就很好理解了呢.

  OK,我们再来看一种新结构,今天的课就结束,已经午夜了,我都累死了.

  当你的程序要处理很多种不同的判断情况的时候elseif..then会让程序看起来很杂乱,所以就有了一种selectcase结构专门对付这种情况,selectcase的语法结构很简单:

selectcase变量名
case值
语句
case值
语句
caseelse
语句
endselect


  我们举个例子就能很简单的说明:

dima
a=inputbox("输入一个1--3的值")
a=int(a)'处理inputbox返回字符串的问题
selectcasea
case1
msgbox("壹")
case2
msgbox("贰")
case3
msgbox("叁")
caseelse
msgbox("输入错误")
endselect

  这个例子把1,2,3这三个阿拉伯数字转化成中国大写数字,这个程序写成if...elseif的形式如下

dima
a=inputbox("请输入1--3的值")
a=int(a)
ifa=1then
msgbox("壹")
elseifa=2then
msgbox("贰")
elseifa=3then
msgbox("叁")
else
msgbox("输入错误")
endif

  怎么样,麻烦吧,还是select好吧.

  OK,今天到此结束,总结一下:


要点:

1)inputbox返回的是一个字符串,而不是一个数,必须用a=int(a)这种形式转化成数

2)bool变量的值只有两种:true,false

2.5)and两边的表达式都是true,则返回true.or两边的表达式有一个是true,就返回true

3)if语句的格式

4)select...case的格式


作业:

1)使用3个bool值,储存你的3兄弟姐妹是否是男性(提示:sister1male=false)

2)给定一个个数,大于10而且小于20输出"正确",否则输出"错误"

3)输入12,或者15,输出"正确",否则输出"错误"

4)把5以内的正整数都转换成中国大些数字

5)自己随便设计一个程序,应用今天的知识
常用实例在VB中,我们可以按以下步骤来创建此类窗口:
1、设置窗口的BorderStyle=3;
2、在Form_Load中加入:Me.Icon=LoadPicture("")->


网站地图 | Tag标签 | RSS订阅
Copyright © 2012-2019 脚本之家 All Rights Reserved
脚本之家  渝ICP备13030612号