关于VB简单判断问题

PrivateSubCommand1_Click()IfInt(Text1.Text)=Text1.TextThenPrint"你输入的是整数"ElsePrint"你输入... Private Sub Command1_Click()
If Int(Text1.Text) = Text1.Text Then
Print "你输入的是整数"
Else
Print "你输入的不是整数"
End If
End Sub
上面这个能判断出是不是整数,可为什么下面的代码判断不出来呢?
Private Sub Command1_Click()
a = Text1.Text
If Int(a) = a Then
Print "你输入的是整数"
Else
Print "你输入的不是整数"
End If
End Sub
展开
 我来答
艾迪康乐园
2013-10-14 · TA获得超过491个赞
知道小有建树答主
回答量:493
采纳率:0%
帮助的人:658万
展开全部
这里有两个问题要明白:
第一个问题是,VB的隐式转换问题。VB会根据使用环境,将变量隐式转换为相应的类型。例如,If Int(Text1.Text) = Text1.Text Then
语句中,Int函数,它的作用是返回参数的整数部分。
语法:Int(number)
必要的 number 参数是 Double 或任何有效的数值表达式。
这个时候VB就隐式将Text1.Text换换为“Double 或任何有效的数值表达式”。

第二个问题是,如果变量没有进行显式声明,那么VB会根据第一次使用环境默认为该数据类型。例如,a = Text1.Text ,这时候啊就是一个字符换变量。

所以,笔者建议养成良好的变成习惯:每个变量都及时声明,减少错误;尽量使用显式转换,减少隐式转换,减少错误。

OK,按照这个法则,你的代码就应该是这样的:
Private Sub Command1_Click()
If CInt(Text1.Text) = CDbl(Text1.Text) Then
Print "你输入的是整数"
Else
Print "你输入的不是整数"
End If
End Sub
Private Sub Command1_Click()
Dim a As Double
a = CDbl(Text1.Text)
If Int(a) = a Then
Print "你输入的是整数"
Else
Print "你输入的不是整数"
End If
End Sub
善良的猪头3
2013-10-14 · TA获得超过2932个赞
知道大有可为答主
回答量:2522
采纳率:71%
帮助的人:2799万
展开全部
Private Sub Command1_Click()
a = val(Text1.Text)
If Int(a) = a Then
Print "你输入的是整数"
Else
Print "你输入的不是整数"
End If
End Sub

文本框默认是文本,赋予a后 a就是文本,就不能判断了。
直接引用,系统根据运算选取合适的格式
更多追问追答
追问
如果我先声明a为整形,怎么又判断不出来了?
dim a as integer
a = val(Text1.Text)
If Int(a) = a Then
Print "你输入的是整数"
Else
Print "你输入的不是整数"
End If
追答
你声明为整形,那小数怎么办
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hhglzgcz
2013-10-14 · TA获得超过960个赞
知道小有建树答主
回答量:1800
采纳率:54%
帮助的人:450万
展开全部
text控件中输出的是 字符型的变量 你用val函数转换一下就行了
Private Sub Command1_Click()

a = Val(Text1.Text)
If Int(a) = a Then
Print "你输入的是整数"
Else
Print "你输入的不是整数"
End If
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友9dd2e079c
2013-10-14 · TA获得超过243个赞
知道小有建树答主
回答量:312
采纳率:0%
帮助的人:217万
展开全部
Private Sub Command1_Click()
dim a as single '这加入进来
a = val(Text1.Text)
If Int(a) = a Then
Print "你输入的是整数"
Else
Print "你输入的不是整数"
End If
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式