关于vb课后答案的if语句。 课后题8:下列程序段()能够正确实现条件:如果X<Y,则A=15,否则A=-15

答案是C:
if X<y then
A=15 : print A
a=-15 :print a
end if
可是我感觉应该是D:
if X<Y then A=15
else A=-15
print A
end if
不过两种我都在VB环境中试过了。
答案C:输入X<y,即显示15也显示-15
答案D:提示else没有if语句。上面明明有的。
望懂的解决一下铪。大家共同学习。交流。
希望能给个解释。别C对D对。就结束了。

第1个回答  2011-03-03
If x < y Then a = 15 '因为then后面直接写了"a = 15",所以If语句到这一行末就结束了,也就造成Else没有If的问题。
Else: a = -15
Print a '这里有个小问题,print语句只有当X<y时才会执行打印显示
End If
正确写法一:
If x < y Then a = 15 Else a = -15
Print a
'end if 不能要,否则会造成end if 没有if块的问题
正确写法二:
If x < y Then
a = 15
Else
a = -15
end if
Print a
第2个回答  2011-03-03
答案是D
x<>y的结果是TURE或FALSE,所以此句为关系表达式,y=x*x也可以是关系表达式,也可以是赋值语句,但是使用在THEN后面则是一个单独执行的语句,所以是赋值用的,即将x*x的值赋值到y里,如果是使用在if后面则变为关系表达式,其值也是为TURE或FALSE追问

这个好行跟我的题不对号把。
你回答是我的题吗?

参考资料:百度一下

第3个回答  2011-03-03
答案有问题,按照题意把答案的A等于负十五前加上else就可以了,你可以试下追问

我也感觉是答案的问题。
不过这好歹还是发的教材书上带的答案。老师也没讲过。
唉~就是d怎么回事。老是提示else没有if语句。上面明明有的。啊

追答

课本也不一定全对,你用的是那个课本,我看了下面的,要是楼下的发的码是D的话,那就是D对了
if X<Y then A=15 ’这一句是if 语句的单行格式,不能再用end if了,不合格式
我上面说的是这样的:
If x < y Then
a = 15: Print a
Else
a = -15: Print a
End If
我用的是手机,打字难,才没有说清!
我用的是电子出版社的书,书里的代码都有错的,不过题一般不会错的,你多试下

本回答被提问者采纳
第4个回答  2011-03-03
上错
A=15 a=-15都处在if 与endif间且无else 所以同期执行

后一个对于if 与end if间
esle 将15 -15分隔
所以依if的不同情况进行分立执行追问

那D也不对把。
我在vb环境中编写。
提示:提示else没有if语句。上面明明有的
怎么回事。有对的吗?

追答

刚试了一下语句无错
新建程序 直接在窗体双击再写入代码
if 1<5 then
A=15
else :A=-15
end if
msgbox a
这后运行得结果

第5个回答  2011-03-05
else A=-15应该是elseif A=-15 then
else后面不跟表达式的
相似回答