我有个“谁最大,谁最小”程序,无法在VB2010运行,请指教一二
vb.net吧
全部回复
仅看楼主
level 1
立波22 楼主
请大神帮个忙,我有个小程序,无法在VB2010中运行,麻烦指点指点,谢谢!
代码如下:
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim a As String, b As Double, c As Boolean
c = False
Do
If c = True Then '输入数值
a = InputBox("请输入数值,输入非数字结束。目前最大数为 " & b, "输入")
Else
a = InputBox("请输入数值,输入非数字结束。", "输入")
End If
If IsNumeric(a) Then '判断是否是数值型
If c = False Then
b = a
c = True
Else
b = CDbl(IIf(CDbl(a) > b, a, b)) '如果a>b交换值
End If
Else
Exit Do '退出循环
End If
Loop
Label1.Text = "输入的数中最大的是:" & b
End Sub
Public Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim a As String, b As Double, c As Boolean
c = False
Do
If c = True Then
a = InputBox("请输入数值,输入非数字结束。目前最小数为" & b, "输入")
End If
If IsNumeric(a) Then '判断是否是数值型
If c = False Then
b = a
c = True
Else
b = CDbl(IIf(CDbl(a) < b, a, b)) '比较最小值
End If
Else
Exit Do '退出循环
End If
Loop
Label1.Text = "输入的数中最小的是:" & b
End Sub
End Class
2018年06月03日 07点06分 1
level 11
错误窗口呢,不给报错信息就没了重点,想让我一句一句看完啊[汗]
2018年06月03日 08点06分 2
level 1
立波22 楼主
哦,对不起。[呵呵]
警告1变量“a”在赋值前被使用。可能会在运行时导致 null 引用异常。
2018年06月03日 09点06分 3
行号呢[汗]信息打不全还不如直接截图
2018年06月03日 09点06分
原代码也带行号截图发一张
2018年06月03日 09点06分
level 1
立波22 楼主
2018年06月03日 14点06分 4
level 11
看32行,如果c是False,那么a变量就没有被赋值,可以编译通过,如果a没有被赋值IsNubersic(a)传入的a是 Nothing,之所以会产生这个警告是因为很多.Net方法参数是不允许传 Nothing 进去的,会抛出异常,某些个别的参数不会,如果要消除这个警告,确认是要在c为False的时候传入Nothing,那么就在If块里加上
Else
a = Nothing
2018年06月04日 06点06分 5
level 1
立波22 楼主
谢谢您的帮助![呵呵]
我后来在34行输入以下内容,就能使用了。
Else
a = InputBox("请输入数值,输入非数字结束。", "输入")
2018年06月04日 12点06分 6
level 13

2018年06月04日 23点06分 7
1