各位大佬能不能帮我看看哪里出错了呀,做了一个计算器,运行时,
vb吧
全部回复
仅看楼主
level 1
雪阳传奇 楼主
各位大佬能不能帮我看看哪里出错了呀,做了一个计算器,运行时,一按等号键,运算结果全为0,这是怎么回事啊[泪]
2021年06月25日 10点06分 1
level 1
雪阳传奇 楼主
Dim ops1﹠﹐ops2﹠, 记录两个操作数
Dim op As Byte, 记录输入的运算符
Dim res As Boolean, 表示是否已计算出结果
Private Sub Form_Load()
res = False
End Sub
Private Sub cmdClear_Click()
Dataout.Text = ""
End Sub
Private Sub cmdNumber_Click(Index As Integer)
If Not res Then
Dataout.Text = Dataout.Text & Index
Else
Dataout.Text = Index
res = False
End If
End Sub
Private Sub cmdOperator_Click(Index As Integer)
ops1 = Dataout.Text
op = Index '记录下对应的运算符
Dataout.Text = ""
End Sub
Private Sub cmdresult_Click()
osp2 = Dataout.Text
Select Case op
Case 0
Dataout.Text = ops1 + ops2
Case 1
Dataout.Text = ops1 - ops2
Case 2
Dataout.Text = ops1 * ops2
Case 3
If osp2 <> 0 Then
Dataout.Text = ops1 / ops2
Else
MsgBox ("不能以0为除数")
Dataout.Text = ""
End If
End Select
res = True '已算出结果
End Sub
2021年06月25日 10点06分 2
level 7
帮你暖贴,看不懂[滑稽]
2021年06月25日 11点06分 3
level 7
你这两个是啥?是命令按钮还是自定义过程?命令按钮好像不能这样写吧,自定义过程的话也没看到你调用啊?
cmdNumber_Click
cmdOperator_Click
2021年06月25日 12点06分 4
level 11
首先建议代码第一行加上Option Explicit,并且运行时选择【全编译执行】,这样可以防止变量名输错,楼主输入了两个osp2结果就是0。
然后输入符号时一定要区分是半角英文符号还是全角中文符号,除了字符串外代码的符号应该都是半角的,楼主第一行三个全角符号都是错的应该改为半角。
然后楼主前三行的注释符号输入错了,虽然好像没影响运行但是还是应该改过来。
2021年06月25日 12点06分 5
十分感谢,已经找到问题了[太开心]
2021年06月27日 11点06分
level 11
2021年06月25日 13点06分 6
看了你这楼发现,全角的&符号不被识别成类型符号也就算了,居然还变成了变量名的一部分,定义出来的变量名称是ops1&而不是ops1
2021年06月25日 15点06分
@初音✨七奈 要楼主发现才行。除法条件判断还有一处呢
2021年06月25日 15点06分
不对,这还不是全角的&,中间也不是全角的逗号,你框起来的是一个变量名……
2021年06月25日 15点06分
level 11
2021年06月25日 13点06分 7
请问您是怎么弄出来的[乖]
2021年06月27日 04点06分
2021年06月27日 04点06分
红色框起来的部分,改正就行了
2021年06月27日 04点06分
@壮士哥你好 非常感谢你,已经找到问题了[太开心]
2021年06月27日 11点06分
吧务
level 13
2021年06月25日 16点06分 8
level 1
雪阳传奇 楼主
谢谢各位大佬,本人已经成功的找出来问题并解决[哈哈]
2021年06月27日 11点06分 9
1