y2 = y + int(r * cos(t)) //更新起点坐标 x1 = x2 y1 = y2 r = r + 2 Next End Sub
'五:1、写一个脚本,要求:在画图工具中画一个渐变放大的圆形漩涡效果图。提示:cos
函数与sin函数应用。 Call 画漩涡(420, 280) EndScript
Function 画漩涡(起点X, 起点Y) Dim HX, HY, n n = 1
While HX < 600
MoveTo HX, HY : Delay 3
HX = 起点X + cos(n) + n * sin(n) HY = 起点Y + sin(n) - n * cos(n) n = n + 0.1 Wend
End Function
'五:2、随机生成一个1~100之间的整数,玩家可以通过函数InputBox命令输入数字来猜测那未知的随机数字,猜对则退出游戏,猜错则提示答案的范围(猜数游戏),请写出代码: Dim 随机, 猜测, 下限, 上限, 次数
Randomize
随机 = Int(100 * Rnd + 1) TracePrint \随机=\& 随机 下限 = 1 : 上限 = 100
猜测 = Cint(InputBox(\请输入你的猜测\\猜数字游戏\For 次数 = 1 To 99 : Delay 100
If 猜测 < 随机 and 猜测 > 下限 Then : 下限 = 猜测 ElseIf 猜测 > 随机 and 猜测 < 上限 Then : 上限 = 猜测 ElseIf 猜测 = 随机 Then
MsgBox \总共\& 次数 & \次猜中了 八戒 看来今年你又要涨价了!\64, \程序·提示\
Exit For End If
猜测 = Cint(InputBox(\答案范围为:\& 下限 & \& 上限, \程序·提示 还可再猜\& 100 - 次数 & \次 \
Next EndScript
'五:3、筛选出100以内所有个位数加十位数等于10的数,例如82,8+2=10满足条件,请写出代码
Dim Text, T, G, S
For T = 0 To 99 G = T Mod 10 S = Int(T / 10)
If (G + S) = 10 and Text <> \Then : Text = Text & \,\& T ElseIf (G + S) = 10 and Text = \Then : Text = T End If Next
MsgBox \以内所有个位数加十位数等于10的数:\& VbCrlf & VbCrlf & Text, 64, \程 序·提示\
EndScript
'五:4、写一个函数,已知一段坐标信息的字符串为:\0,230|320,200,10|300,150|280,150,10|270,130|250,130\,计算得出离185,246坐标最近的一组坐标。提示:For循环与数组应用。
TracePrint 坐标最近判断(\50|270,130|250,130\\
EndScript
Function 坐标最近判断(信息, 坐标) Dim Arr, Str, StrX, StrY, Ping, a, b, c, i Arr = Split(信息, \'信息分离 Str = Split(坐标, \'坐标分离
StrX = Clng(Str(0)) : StrY = Clng(Str(1)) '提取坐标X与Y值
For i = 0 To UBound(Arr) '勾股定理计算每个坐标到指定坐标的平方值 If i = 0 Then
Ping = (Abs(Clng(Split(Arr(i), \- StrX)) ^ 2 + (Abs(Clng(Split(Arr(i), \(1)) - StrY)) ^ 2
Else
Ping = Ping & \& (Abs(Clng(Split(Arr(i), \- StrX)) ^ 2 + (Abs(Clng(Split(Arr(i), \- StrY)) ^ 2
End If Next
TracePrint Ping
b = Split(Ping, \: a = 0 : c = b(0) TracePrint c
For i = 1 To UBound(b)
TracePrint \& i & \& b(i)
If Clng(b(i)) < Clng(c) Then : c = b(i) : a = i : End If Next
坐标最近判断 = Arr(a) End Function
'五:5、写一个算法可以将十进制的字符串转成八进制的字符串.例如\0\请写出代码 Dim 十进数
十进数 = InputBox(\输入你想转换的十进制数字\\十转八进制·算法\\MsgBox \十进制数:\十进数 & \→ 八进制数:\& 十转八进制算法(十进数), 64, \程序·提示\
EndScript
Function 十转八进制算法(十进数) 十转八进制算法 = \While 十进数 > 0
十转八进制算法 = 十进数 Mod 8 & 十转八进制算法 十进数 = 十进数 \\ 8 Wend
End Function
'四:1、切换所有标题包含\Explorer\的窗口,请写出代码 Dim HwndEx, MyArray, i HwndEx = \
HwndEx = Plugin.Window.Search(\Explorer\If HwndEx <> \Then
MyArray = Split(HwndEx, \
For i = 0 To UBound(MyArray) - 1 '模糊搜索最后一个值是空的所以忽略 Call Plugin.Window.Top(Clng(MyArray(i)), 0)
Call Plugin.Msg.Tips(\当前共有\& UBound(MyArray) & \个窗口包含“Internet Explorer”\& VbCrlf & \切换为第\& i + 1 & \个窗口\
Delay 1500
Call Plugin.Window.Top(Clng(MyArray(i)), 1) Next Else
Call Plugin.Msg.Tips(\当前没有包含“Internet Explorer”的窗口\End If EndScript
'四:2、规定区域内随机输出一个日期,例如 \到\之间的某一天,请给出代码
Do
TracePrint \随机日期=\& 随机产生日期(\\Delay 1500 loop
EndScript
Function 随机产生日期(起始年月日, 终止年月日) Dim 间隔, 随机数
间隔 = DateDiff(\起始年月日, 终止年月日) 随机数 = Int((间隔 + 1) * Rnd)
随机产生日期 = DateAdd(\随机数, 起始年月日) End Function
'四:3、生成[2,6]个[65,90]之间的偶数,并将生成的数转为与指定的ANSI 字符代码相对应的字符,最终合并结果MessageBox 弹出。请给出代码。
Dim 字母个数 Do
Randomize
字母个数 = Int((6 - 3 + 1) * Rnd + 3)
MessageBox 随机偶数ANSI码(字母个数, 65, 90) Delay 500 loop
EndScript
Function 随机偶数ANSI码(字符数, 下限, 上限) Dim 随机数值, 字母Asc Randomize For 字符数
随机数值 = int((上限 - 下限 + 1) * Rnd + 下限)
If 随机数值 mod 2 = 1 Then 随机数值 = 随机数值 - 1 If 随机数值 = 64 Then 随机数值 = 66 字母Asc = 字母Asc & Chr(随机数值) Next
随机偶数ANSI码 = 字母Asc End Function
'三:1、写出用goto命令循环十次的过程 Dim a1 a1 = 10
Rem 从这里开始
TracePrint \倒计次了!\& a1 a1 = a1 - 1
If a1 > 0 Then Goto 从这里开始 EndScript
'三:2、(前台)依次按下\四个键,中间延迟100毫秒,循环10次 Dim p
For p = 1 To 10 KeyPress 65, 1 Delay 100
KeyPress 74, 1 Delay 100
KeyPress 74, 1 Delay 100
KeyPress 76, 1 Delay 100 Next EndScript
'三:3、有数字 a 和 数字 b ,分别弹出其 加减乘除 四个结果.(假设a=4,b=2),请给出代码 Dim a, b
a = 4 : b = 2 MessageBox a + b MessageBox a - b MessageBox a * b MessageBox a / b
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
以下是2、3、4级部分选择题 较乱没有整理
按键精灵支持jpg 格式截屏 按键精灵可以调用VBS 8常数 VbOk 的值为?