vbs运行结果为什么不一致?

为何两种运行结果不一样?
第一种:

Dim a,b,c
a=inputbox("a是:","输入半径")
b=Inputbox("b是:","输入半径")
c=a*2+b*2
msgbox(c)

第二种:

Dim a,b,c
a=inputbox("a是:","输入半径")
b=Inputbox("b是:","输入半径")
c=(a+b)*2
msgbox(c)

第一种运行结果:

img


第二种运行结果:

img


为什么会出现不一样的结果?

c=(a+b)*2
因为 ab是字符串,所以是字符串相加
当输入1和2的时候a+b得到了12
可以这么写

c=(val(a)+val(b))*2

你用的是字符串输入,而字符串相加自然而然得不到想要的结果
这个字符串问题在python里也有,这里如果是两个字符串相加的话就会,把他们俩连在一起,比如1+2=12,5+19=519,10+10=1010……
解决方法是:把字符串转化成数值
具体改法:

Dim a,b,c
a=inputbox("a是:","输入半径")
b=Inputbox("b是:","输入半径")
c=(val(a)+val(b))*2
msgbox(c)

我上网还帮你搜到了一个VBS很好的讲解视频,讲的超级棒,你可以看看,我觉得应该对你有所帮助:

必看的VBS教程!超级详细!保你听懂!【第一课】_哔哩哔哩_bilibili 之后的系列课程会更加高质量,更多干货哦!点个不要钱的赞吧!!!, 视频播放量 5547、弹幕量 30、点赞数 147、投硬币枚数 63、收藏人数 189、转发人数 23, 视频作者 爱编程的小陈同学, 作者简介 大家好,我只是个初一学生党,粉丝们可以加群获取源文件和提问!(群见置顶动态),相关视频:VBA高级教程,VBS-让WinCC插上翅膀,手把手教你做一个vbs病毒,【超实用VBS教程】第二课:程序也懂得变通吗?,VBScript 快速入门,合集1_VBS声音平衡教学系统-基础练习,vbs教程1.制作对话框,vbs教程2.循环,【vbs教程】从0开始学习VBS【第九课】VBS对文件操作,批处理之家-VBS基础视频教程 https://www.bilibili.com/video/BV1vq4y1F7nS/?spm_id_from=333.788

第一种在乘的时候会自动将字符串转换为数进行计算,所以得到正确的结果。
第二种先进行的是字符串相加操作,"1"+"2"="12"。