钢铁雄心4海轰不炸船:这道VB题目何解?为什么?

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 22:01:22
在应用程序中用"private sub sub1(x as integer ,y as single)"定义了子程序sub1,调用程序中的变量I ,J 均为integer型,则正确调用子程序sub1的Call语句是()
1.Call sub1(I,J) 2.Call sub1(3. 1415 ,I)
3.Call sub1(3. 14,234 )
4.Call sub("245" ,"231.5")
可是答案是3和4 是对的?为什么?

应该选1。
Call sub1(I,J)中,I是整数,符合要求。J虽然是整数,而此处变量的类型要求是单精度,但整数是可以自动转化成单精度类型的,因为单精度类型包含了整数的所有值。
Call sub1(3.1415,J)中,第一个变量类型应该是整型,而3.1415是浮点类型(即实数类型),所以是不可行的。
Call sub1(3.14,234)与Call sub1(3.1415,J)一样,参数的类型都有错误。
Call sub1("245", "231.5")中,由于用""扩起来的是字符串类型,它无法直接转换成数字类型,因此也是不合法的。

这个答案肯定有错误。