在VB里面,为什么sgn(3>2) 会返回 -1 而不是 1

在VB里面,为什么sgn(3>2) 会返回 -1 而不是 1

题目
在VB里面,为什么sgn(3>2) 会返回 -1 而不是 1
a = InStr(5,"hello!Beijing.","e")
b = Sgn(3 > 2)
c = a + b
MsgBox c
这里msgbox c最后显示的为什么是7而不是9
答案
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.
举一反三
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
1,人们染上烟瘾,最终因吸烟使自己丧命.
最新试题
热门考点

超级试练试题库

© 2017-2019 超级试练试题库,All Rights Reserved.