早教吧 育儿知识 作业答案 考试题库 百科 知识分享

计算机二级Access习题,求考过的童鞋帮忙.运行下列程序,显示的结果是a=Instr(5,"Hello!Beijing.","e")b=sgn(3>2)c=a+bMsgboxcA)9B)1C)7D)3请问为什么选C?谢谢!

题目详情
计算机二级Access习题,求考过的童鞋帮忙.
运行下列程序,显示的结果是
a=Instr(5, "Hello!Beijing. ", "e")
b=sgn(3>2)
c=a+b
Msgbox c
A) 9 B) 1 C) 7 D) 3
请问为什么选C?谢谢!
▼优质解答
答案和解析
InStr([起始位置] 接受搜索的字符串,被搜索的字符串)表示从接受搜索的字符的第5个字符开始找“e”,很显然是在第8个.
VB中函数Sgn(数值)用来返回数值的符号,如果“数值”>0,则返回1,如果“数值”<0,则返回-1,如果“数值”=0,则返回0.现在这个式子是Sgn(3>2),这里的形式是一个关系表达式,3>2的结果显示是True,现在的关键是布尔型的数值True需要转换成数值,然后才能得到其符号的.
在VB中,布尔型数值转换成数值型时,True对应-1,False对应0,现在3>2的结果为True,对应数值为-1,相当于变成Sgn(-1),当然其结果为-1了.如果Sgn(3<2),其结果为0.
所以c=a+b=8-1=7