当前位置:编程学习 > VB >>

关于VB编程的问题

想要输入年份和月份,再判断其是否为闰年,该月有多少天。
在VB中输入一下代码后,运行错误,请问是何原因?
Private Sub Command1_Click()
Dim y As Integer, m As Integer
y = InputBox("年份", "请输入")
m = InputBox("月份", "请输入")
Select Case I = y Mod 4
Case I = 0
If y Mod 100 Then
Print "该年为闰年"
Else
Print "该年不是闰年"
End If
Select Case m
Case m = 1, 3, 5, 7, 8, 10, 12
Print "该月天数为"; 31; "天"
Case m = 2
Print "该月天数为"; 29; "天"
Case m = 4, 6, 9, 11
Print "该月天数为"; 30; "天"
Case Else
Print "月份输入错误!"
End Select
Case Else
Print "该年不是闰年"
End Select
End Sub
补充:若果不是上述的赋值方法,请问应该如何正确赋值?
		
答案:
'你把代码改成这样就行了

Private Sub Command1_Click()
Dim y As Long, _
m As Long '怕用户输入过大INTEGER只能是4位或8 位

Dim b As Boolean '闰年开关

Me.Cls
b = False

y = Val(InputBox("年份", "请输入")) '转换成数值
m = Val(InputBox("月份", "请输入"))

If y Mod 4 = 0 Or y Mod 400 = 0 Then
Print "年份:"; y; " 是闰年!"
b = True
Else
Print "年份:"; y; "不是闰年!"
b = False
End If

Select Case m
Case 1, 3, 5, 7, 8, 10, 11
Print "月份:"; m; "有31天!"
Case 4, 6, 9, 12
Print "月份:"; m; "有30天!"
Case 2
If b = True Then
Print "月份:"; m; "有29天!"
Else
Print "月份:"; m; "有28天!"
End If
End Select
End Sub
Select Case m
Case m = 1, 3, 5, 7, 8, 10, 12
Print "该月天数为"; 31; "天"
Case m = 2
Print "该月天数为"; 29; "天"
Case m = 4, 6, 9, 11
程序中能这样付值吗?你确定?

上一个:VB编程 要结果和步骤
下一个:VB编程语句用法具体意思

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,