设在当前目录下有一个名为“file.txt”的文本文件,其中有若干行文本。编写如下程序: Private Sub Command1_Click() Dim ch$.ascii As Integer Open"file.Lxt"For Input As #1

admin2016-06-23  37

问题 设在当前目录下有一个名为“file.txt”的文本文件,其中有若干行文本。编写如下程序:
Private Sub Command1_Click()
Dim ch$.ascii As Integer
Open"file.Lxt"For Input As #1
While Not EOF(1)
Line Input#1.ch
ascii=toascii(ch)
Print ascii
Wend
Close #1
End Sub
Private Function toascii(mystr As String)As Integer
n=0
For k=1 To Len(mystr)
n=n+Asc(Mid(mystr,k,1))
Next k
toascii=n
End Funetion
程序的功能是

选项 A、按行计算文件中每行字符的ASCII码之和,并显示在窗体上
B、计算文件中所有字符的ASCII码之和,并显示在窗体上
C、把文件中所有文本行按行显示在窗体上
D、在窗体上显示文件中所有字符的ASCII码值

答案A

解析 过程toascii的功能是依次取出传入字符串中的每个字符,用Asc函数将这个字符转换为相应的ASCII码值,通过For循环将这些值累加。累加值由过程名返回。Click事件中以顺序输入方式打开file.txt文件,即以读取方式打开文件。While循环的结束条件是到达文件尾部,在循环体中,Line Input #语句读取文件中的一行数据存入变量ch中,然后以ch为参数调用过程toascii,即计算这一行字符中所有字符的ASCII码值的和,返回值赋给变量ascii,在窗体上输出ascii的值。所以While循环结束时,将在窗体上显示输出file.txt中每一行数据的ASCII码值的和。因此答案为A。
转载请注明原文地址:https://kaotiyun.com/show/5FID777K
0

最新回复(0)