高分~~~急求!一道VB题目之详解!!!

来源:百度知道 编辑:UC知道 时间:2024/07/02 12:35:15
【程序说明】
自定义函数DTOB实现将十进制整数转换为字符串形式的二进制数。
【程序】
Private Sub Form_click()
Static k As Integer
Dim x As Integer
x = x + 2 : k = k + x
Open "c:\result.txt" For Output As 1
Print #1, DTOB(x);
Print #1, x
Print #1, DTOB(k);
Print #1, k
Close #1
End Sub
private Function DTOB(ByVal n As Integer) As String
Dim s As String, c As String
While (17)
c = (18)
s = c + s : n = (19)
Wend
(20)
End Function
(17) A、n<=0 B、n=1 C、n>0 D、n<>1
(18) A、chr(n \ 2) B、trim(str(n mod 2)) C、trim(str(n \ 2)) D、val(n mod 2)
(19) A、n = n \ 2 B、n = n / 2 C、n = n mod 2 D、n = n - 2
(20) A、s = DTOB B、DTOB(n) = s C、Print s D、DTOB = s
(21) 单击窗体两次后,文件C:\result.txt中的内容是什么?
A、10 2 B、10 2 C、“10”,2 D、“10” 2
100 4 10 2 “10”,4 “1

17 只要n大于0则执行循环
18 取出余数,str函数会用空格表示正数,所以,再把前后的空格去掉用trim。
19 \是整除,除后求整。
20 把结果传给函数返回。
21 k为静态变量,运行后值不会消失,所以第一次为2,第二次为4。
22 write输入是用","分隔,";"表示在同一行输出。
23 参数声明不加Byval相当于byref,也就是传址调用,会改变原来的值。每次运行完后会清零(因为循环的条件是大于0,所以结束循环时候值为0)。
24 append是添加,意思是在文件后面添加数据,output是覆盖数据。所以结果会有两组。
这是什么题?这么难~~~