51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5166|回复: 27
打印 上一主题 下一主题

[原创] 请问这段VBS代码那错了????

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-4-29 10:34:54 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
dim a,b,c,msga,msgb
msga="请输入数值a"
a=inputbox(msga)
msgb="请输入数值b"
b=inputbox(msgb)
a=int(a)
b=int(b)
c=a*b
if a="" or b="" then
msgbox("a或b值不能为空")
else
msgbox(c)
endif
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

28#
发表于 2011-6-9 17:02:28 | 只看该作者
Dim a,b,c,msga,msgb
msga="Please input a"
a=InputBox(msga)
msgb="Please input a"
b=InputBox(msgb)
If a="" Or b="" then
MsgBox("a and b can not null!")
Else
a=Int(a)
b=Int(b)
c=a*b
MsgBox c
End If
我的这段
回复 支持 反对

使用道具 举报

该用户从未签到

27#
发表于 2011-5-31 18:18:12 | 只看该作者
关键看调试的需求是什么?有什么要求,满足要求就行。要不调试没方向。
回复 支持 反对

使用道具 举报

该用户从未签到

26#
发表于 2011-5-20 14:43:25 | 只看该作者
回复 22# hwm831002

我运行了.. 通过了,不知这位大侠说的有错是什么错呢?可否详细些?
回复 支持 反对

使用道具 举报

该用户从未签到

25#
发表于 2011-5-19 16:12:33 | 只看该作者
如果还要排除a和b为字符型的情况,代码也可以这么写:

Dim a,b,c,msga,msgb
msga="请输入a:"
msgb="请输入b:"
a=InputBox(msga)
b=InputBox(msgb)

If Trim(a)="" Or Trim(b)="" then
   MsgBox "a或者b不能为空"
ElseIf IsNumeric(a) And IsNumeric(b) then
   c=a*b
   MsgBox c
Else
   MsgBox "请输入数字"
End if
回复 支持 反对

使用道具 举报

该用户从未签到

24#
发表于 2011-5-19 15:46:00 | 只看该作者
求教了老公大人,正解为:


Dim a,b,c,msga,msgb
msga="input a"
msgb="input b"
a=InputBox(msga)
b=inputbox(msgb)

If Trim(a)="" Or Trim(b)="" then
      MsgBox "a or b must be not null"
Else
     c=a*b
     MsgBox c
End If
回复 支持 反对

使用道具 举报

该用户从未签到

23#
发表于 2011-5-14 16:37:14 | 只看该作者
dim a,b,c,msga,msgb
msga="请输入数值a"
a=inputbox(msga)
msgb="请输入数值b"
b=inputbox(msgb)
a=i ...
偶爱台球 发表于 2011-5-4 14:21


支持这种说法,有没有人设置断点调试过啊?
回复 支持 反对

使用道具 举报

该用户从未签到

22#
发表于 2011-5-13 15:54:55 | 只看该作者
回复 20# hellenchen

运行了下还是有错
回复 支持 反对

使用道具 举报

  • TA的每日心情
    擦汗
    2017-2-4 09:49
  • 签到天数: 145 天

    连续签到: 1 天

    [LV.7]测试师长

    21#
    发表于 2011-5-13 09:14:40 | 只看该作者
    20#方法不错。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20#
    发表于 2011-5-12 10:02:03 | 只看该作者
    dim a,b,c,msga,msgb,y
    y=0
    do while y=0
    msga="请输入数值a"
    a=inputbox(msga)
    msgb="请输入数值b"
    b=inputbox(msgb)
    if IsNumeric(a) and IsNumeric(b) then
    a=int(a)
    b=int(b)
    c=a*b
    msgbox(c)
    y=1
    else
    msgbox("a或b值输入非数字型字符,请重新输入")
    end if
    loop
    不知这个结果是不是你想要的
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2019-12-27 13:32
  • 签到天数: 15 天

    连续签到: 1 天

    [LV.4]测试营长

    19#
    发表于 2011-5-10 21:43:12 | 只看该作者
    dim a,b,c,msga,msgb
    ....
    a=Cint(a)
    b=Cint(b)
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
    发表于 2011-5-4 14:21:50 | 只看该作者
    dim a,b,c,msga,msgb
    msga="请输入数值a"
    a=inputbox(msga)
    msgb="请输入数值b"
    b=inputbox(msgb)
    a=int(a)
    b=int(b)
    c=a*b   ----------------------------------------程序走到这就要算a*b的值了,你不输入肯定会报错的
    if a="" or b="" then
    msgbox("a或b值不能为空")
    else
    msgbox(c)
    endif
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
     楼主| 发表于 2011-4-29 14:17:29 | 只看该作者
    dim a,b,c,msga,msgb
    Do
    m=1
    msga="请输入数值a"
    a=inputbox(msga)
    If IsNumeric(a) Then
      a = CDbl(a)
      If a<0 Then
       m = MsgBox("输入数值大于0!",5)
      End If
    Else
      m = MsgBox("输入数值大于0!",5)
    End If
    If m = 2 Or m = 0 Then
      WScript.Quit
    End If  
    Loop While m=4
    Do
    m = 1
    msgb="请输入数值b"
    b=inputbox(msgb)
    If IsNumeric(b) Then
      b = CDbl(b)
      If b<0 Then
       m = MsgBox("输入数值大于0!",5)
      End If
    Else
      m = MsgBox("输入数值大于0!",5)
    End If
    If m = 2 Or m = 0 Then
      WScript.Quit
    End If  
    Loop While m=4
    Randomize
    c=a*b/2
    msgbox(c)
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    16#
     楼主| 发表于 2011-4-29 12:07:15 | 只看该作者
    这样对字符没有控制 如果输入 ABCD 或中文就会报错
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
    发表于 2011-4-29 11:56:47 | 只看该作者
    我不是太熟悉VBS的语法,只是通过经验调试了一下
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2011-4-29 11:55:59 | 只看该作者
    dim a,b,c,msga,msgb,x,y
    msga="请输入数值a"
    x=inputbox(msga)
    msgb="请输入数值b"
    y=inputbox(msgb)
    if x="" or y="" then
    msgbox("a或b值不能为空")  
    else
    a=Cint(x)
    b=Cint(y)
    c=a*b
    msgbox(c)
    end if

    现在呢,再看一下
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
     楼主| 发表于 2011-4-29 11:53:48 | 只看该作者
    请问字符怎么判断啊,是不是有表达式
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
     楼主| 发表于 2011-4-29 11:53:26 | 只看该作者
    dim a,b,c,msga,msgb,x,y
    msga="请输入数值a"
    a=inputbox(msga)
    msgb="请输入数值b"
    b=inputbox(msgb)
    if a="" or b="" then
    msgbox("a或b值不能为空或字符")  
    else
    a=int(a)
    b=int(b)
    c=a*b/2
    msgbox(c)
    end if
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2011-4-29 11:52:40 | 只看该作者
    测了一下,还是不对,不好意思
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2011-4-29 11:51:50 | 只看该作者
    回复 9# vvvv_vvvv


       崩溃中,现在需要知道,这样能不能满足你的需求,还报错吗,结论性的东西
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-14 13:14 , Processed in 0.075793 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表