按键级认证考题_第1页
按键级认证考题_第2页
按键级认证考题_第3页
按键级认证考题_第4页
按键级认证考题_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、按键级认证考题 1、鼠标按圆型移动,半径为r=100,圆点为(200,200),请写出代码.Dim a, x, yMoveTo 100, 200For a = 0 To 360 x = 200 - 100 * cos(a*3.14/180)y = 200 - 100 * sin(a*3.14/180)MoveTo x, yDelay 5NextEndScript1、(前台)区域范围为(100,150)到(200,300)内的所有点是否均为"FFFFFF",是则弹出对话框"没有其他颜色",否则弹出第一个点的颜色值并退出程序. 请写出代码 x = 100 y

2、 = 150 RtColor = Plugin.Color.GetPixelColor(x, y, 0) RtColor1 = RtColor While (y < 300) x=100 While (x < 200) If RtColor = "FFFFFF" Then x = x + 1 Else MessageBox RtColor1 ExitScript End If RtColor = Plugin.Color.GetPixelColor(x, y, 0) Wend y=y+1 Wend MessageBox "没有其他颜色"2、利

3、用多线程对多个记事本的窗口位置进行随机移动.请写出代码 RunApp "notepad.exe" /启动3个记事本测试用 RunApp "notepad.exe" RunApp "notepad.exe" Delay 2000 /等待3个记事本工具打开 DimEnv Hwnd1 HwndEx = Plugin.Window.Search("记事本") Hwnd = Split(HwndEx,"|") If UBound(Hwnd) >= 0 Then /判断是否搜到句柄 For i = 0

4、 To UBound(Hwnd) - 1 wnd = Clng(Hwnd(i) /类型转换 Hwnd1 = wnd BeginThread 移动 /启动线程 Delay 100 /启动线程需要点时间 Next End If Do Delay 1000 Loop Sub 移动 Hwnd2 = Hwnd1 Randomize x = Int(Rnd * 500) Randomize y = Int(Rnd*500) / MessageBox x&","&y Call Plugin.Window.Move(Hwnd2, x+ 100, y + 100) End S

5、u3、筛选出100以内所有个位数加十位数等于10的数,例如82,8+2=10满足条件,请写出代码 s="" For i = 1 To 99 a = i mod 10 b = int(i / 10) If (a + b) = 10 Then s=s&i&"|" End If Next MessageBox s4、写一个算法可以将十进制的字符串转成八进制的字符串.例如"8"->"10",请写出代码 Public Function DEC_to_OCT(Dec) DEC_to_OCT = "

6、;" Do While Dec > 0 DEC_to_OCT = Dec Mod 8 & DEC_to_OCT Dec = Dec 8 Loop End Function a=DEC_to_OCT("8") MessageBox a 5、有N个窗口,第一个窗口移动到(0,0)点,其余的窗口根据第一个窗口平铺,窗口不超出屏幕边缘(窗口平铺),请写出代码 RunApp "notepad.exe" RunApp "notepad.exe" RunApp "notepad.exe" RunApp &

7、quot;notepad.exe" RunApp "notepad.exe" RunApp "notepad.exe" HwndEx = Plugin.Window.Search("记事本") Hwnd = Split(HwndEx, "|") ScreenX = Plugin.Sys.GetScRX() ScreenY = Plugin.Sys.GetScRY() MessageBox ScreenX sRect = Plugin.Window.GetWindowRect(Hwnd(0) Message

8、Box sRect xy = Split(sRect, "|") x = xy(2) - xy(0) y = xy(3) - xy(1) sx = 0 sy = 0 i=0 MessageBox x While (Screeny-sy >y) While (ScreenX - sx > x) Delay 10 Call Plugin.Window.Move(Hwnd(i),Cstr(sx),Cstr(sy) sx = sx + x i = i + 1 If i > UBound(Hwnd)-1 Then ExitScript End If Wend sy

9、= sy + y sx=0 MessageBox sy Wend 写一个子程序,可以使鼠标从当前的坐标逐点的移动到目的坐标(带轨迹的鼠标移动),请写出代码DoCall a(50, 50)Call a(800, 600)Loopsub a(x,y)DoGetCursorPos x0, y0 If x > x0 Theni = 1ElseIf x < x0 Theni = -1ElseIf x = x0 Theni = 0End IfIf y > y0 thenii = 1ElseIf y < y0 thenii = -1ElseIf y = y0 thenii = 0En

10、d IfMoveR i, iiIf x = x0 and y = y0 ThenExit doEnd IfLoopEnd sub11、随即生成一个1100之间的整数,玩家可以通过inputbox输入数字,猜对则退出游戏,猜错则提示答案的范围(猜数游戏),请写出代码例如:随机数为:60,用户输入20,程序提示"答案范围为:20100".用户再次输入75,程序提示"答案范围为:2075".用户再次输入60,程序提示"猜中",然后退出程序.Randomize答案 = int(Rnd * 100) + 1最小数 = 1最大数 = 100数字

11、= InputBox("(猜数游戏),输入1100之间的整数,玩家可以通过输入数字,猜对则退出游戏,猜错则提示答案的范围")数字=int(数字)DoIf 数字 = 答案 ThenMsgBox 数字 & ",恭喜答对了"EndScriptElseIf 数字 > 答案 Then最大数 = 数字ElseIf 数字 < 答案 Then最小数 = 数字End If数字 = InputBox("答案范围为:" & 最小数 & "" & 最大数)数字 = int(数字)Loop12、鼠

12、标按圆型移动,半径为r=100,圆点为(200,200),请写出代码.圆点x = 200 : 圆点y = 200 : 半径 = 100 : 圆周率 = 3.14 : 角度数 = 1/公式: 弧度 =角度*圆周率/180DoMoveTo 圆点x + 半径 * cos(角度数 * 圆周率 / 180), 圆点y + 半径 * Sin(角度数 * 圆周率 / 180)角度数 = 角度数 + 1Loop13、锁定鼠标位置在(200,300)到(500,600)之间,超出范围则回到边界(鼠标范围锁定),请写出代码Call 锁范围(200,300,500,600)Function 锁范围(x1,y1,x2

13、,y2)DoGetCursorPos x, yIf x < x1 or x > x2 or y < y1 or y > y2 ThenIf x < x1 Thenx = x1ElseIf x > x2 Thenx=x2End IfIf y < y1 Theny = y1ElseIf y > y2 Theny=y2End IfMoveTo x, yEnd If LoopEnd Function?可以让普通窗口(例如记事本)在屏幕内移动,碰到屏幕边缘随机反向移动(类似屏幕保护的汽泡程序),请写出Call 泡泡屏保("记事本")Fu

14、nction 泡泡屏保(模糊标题)Hwnd = Split(Plugin.Window.Search(模糊标题), "|")If UBound(Hwnd)>=0 = 0 ThenEndScriptEnd Ifiii = 3i = iii : ii = iii最大宽 = Plugin.Sys.GetScRX():最大高 = Plugin.Sys.GetScRY()边框 = Split(Plugin.Window.GetWindowRect(Hwnd(0), "|")W1 = Clng(边框(0) : H1 = Clng(边框(1) : W2 = Cl

15、ng(边框(2) : H2 = Clng(边框(3)W0 = W2 - W1 : H0 = H2 - H1doIf W1 <= 0 Theni = 1 * iiiElseIf W1 + W0 >= 最大宽 Theni = -1 * iiiEnd IfIf H1 <= 0 Thenii = 1 * iiiElseIf H1 + H0 >= 最大高 Thenii = -1 * iiiEnd IfW1 = W1 + i : H1 = H1 + iiCall Plugin.Window.Move(Hwnd(0), W1, H1 )Delay 50LoopEnd Function

16、15、获取数组array(10,9,1,5,2,3,4,5,6,11)中最接近平均数的值,请写出代码a = array(10, 9, 1, 5, 2, 3, 4, 5, 6, 11)i=0For UBound(a) + 1ii = ii + a(i)i = i + 1Next均值 = ii /( UBound(a) + 1)i=0For UBound(a)If Abs(均值 - a(i) > Abs(均值 - a(i + 1) Thenii = a(i + 1)ElseIf Abs(均值 - a(i) < Abs(均值 - a(i + 1) Thenii = a(i)End Ifi

17、=i+1NextMsgBox ii16、有一个字符串,里面包含一些数字,写一个函数,把这些数字加起来。比如“我30你40他50”结果就是120。请写出代码a = "我30你40他50ni"For i = 1 To Len(a) + 1If IsNumeric(Mid(a, i, 1) = True Thenii = ii & Mid(a, i, 1)Elseb = b + iiii = 0End IfNextMsgbox b17、遍历字符串"A1a2d5m8Qz",取出所有小写字母及数字,并按照与原来相反的顺序拼接成新的字符串,请写出代码MsgB

18、ox 反提取小写数字("A1a2d5m8Qz")Function 反提取小写数字(字符)i = Len(字符)For Len(字符)If (Asc(mid(字符,i,1) > 96 and Asc(mid(字符,i,1) < 123 ) or (Asc(mid(字符,i,1) > 47 and Asc(mid(字符,i,1) < 58 ) Then反提取小写数字 = 反提取小写数字 & mid(字符, i, 1)End Ifi = i - 1NextEnd Function/1、遍历字符串"A1a2d5m8Qz",取出所有

19、小写字母及数字,并按照与原来相反的顺序拼接成新的字符串,请写出代码Function getNewStr(str)Dim ac, nstr, nsnstr = ""For i = len(str) To 1 Step - 1 ns = Mid(str, i, 1)ac = Asc(ns)If (ac > 96 and ac < 123) or (ac > 47 and ac < 58) Then nstr = nstr + nsEnd IfNextgetNewStr = nstrEnd FunctionMessageBox getNewStr(&quo

20、t;A1a2d5m8Qz")/2、有一个字符串,里面包含一些 数字,写一个函数,把这些数字加起来。比如“我30你40他50”结果就是120。请写出代码Function getSum(str)Dim ns, nst, numnst = "" : num = 0For i = 1 To len(str)ns = Mid(str, i, 1)If IsNumeric(ns) Then nst = nst + nsElse num = num + Clng(nst)nst = ""End IfNextnum = num + CLng(nst)getSu

21、m = numEnd FunctionMessageBox getSum("我30你40他50")/3、获取数组array(10,9,1,5,2,3,4,5,6,11)中最接近平均数的值,请写出代码Function getNum(ary)Dim num, ab, temp, nmnum = eval(join(ary, "+") / UBound(ary)For i = 0 To UBound(ary)If i = 0 Then ab = Abs(ary(i) - num)End Iftemp = Abs(ary(i) - num)If ab >

22、temp Then ab = tempnm = ary(i)End IfNextgetNum = nmEnd FunctionMessageBox getNum(array(10, 9, 1, 5, 2, 3, 4, 5, 6, 11)/4、写一个函数,可以让普通窗口(例如记事本)在屏幕内移动,碰到屏幕边缘随机反向移动(类似屏幕保护的汽泡程序),请写出Function moveWin(Hwnd)Dim ary, h, w, maxh, maxw, fa, fbScreenW = Plugin.GetSysInfo.GetScreenResolutionX()ScreenH = Plugin.G

23、etSysInfo.GetScreenResolutionY()sRect = Plugin.Window.GetWindowRect(Hwnd)ary = Split(sRect, "|")W1 = Clng(ary(0): H1 = Clng(ary(1) W2 = Clng(ary(2) : H2 = Clng(ary(3)w = W2 - W1 : h = H2 - H1fa = true : fa = trueCall Plugin.Window.Active(Hwnd)Call Plugin.Window.Show(Hwnd)DoRandomizeIf fa T

24、hen W1 = Round(Rnd * 5) + W1Else W1 = W1 - Round(Rnd * 5)End IfIf fb Then H1 = Round(Rnd * 5) + H1Else H1 = H1 - Round(Rnd * 5)End If maxw = w + W1 : maxh = h + H1If W1 <= 0 Then W1 = 0fa = trueEnd IfIf H1 <= 0 Then H1 = 0fb = trueEnd IfIf maxw >= ScreenW Then W1 = ScreenW - w fa = falseEnd

25、 If If maxh >= ScreenH Then H1 = ScreenH - hfb = falseEnd IfCall Plugin.Window.Move(Hwnd, W1, H1)Delay 10LoopEnd Function/Call RunApp("notepad.exe") /Delay 1000/Hwnd = Plugin.Window.Find("Notepad", 0)/If Hwnd > 0 Then / moveWin(Hwnd) /Else / MessageBox "记事本未找到!"/E

26、nd If 5、锁定鼠标位置在(200,300)到(500,600)之间,超出范围则回到边界(鼠标范围锁定),请写出代码Function clockMouse(x1,y1,x2,y2)DoGetCursorPos x, yIf x < x1 Then x = x1End IfIf x > x2 Then x = x2End IfIf y < y1 Then y = y1End IfIf y > y2 Then y = y2End IfMoveTo x, yDelay 1loopEnd Function/Call clockMouse(200,300,500,600)6、

27、鼠标按圆型移动,半径为r=100,圆点为(200,200),请写出代码.Function drwCircle(radius, centreX, centreY)Dim i : i = 0DoMoveTo centreX + radius * cos(i * 3.14159 / 180), centreY + radius * sin(i * 3.14159 / 180)i = i + 1If i = 360 Then : i = 0 : End IfDelay 2LoopEnd FunctionCall drwCircle(100, 200, 200)7、随即生成一个1100之间的整数,玩家可以通过inputbox输入数字,猜对则退出游戏,猜错则提示答案的范围(猜数游戏),请/写出代码/例如:/随机数为:60,用户输入20,程序提示"答案范围为:20100"./用户再次输入75,程序提

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论