如何在VB中用比较简单的语句编写一个计算星座的程序 求详细过程

 我来答
syx54
2012-07-24 · TA获得超过7378个赞
知道大有可为答主
回答量:6567
采纳率:83%
帮助的人:2755万
展开全部
简单是相对的,如果要求代码少而精,可能可读性与结构性就差,反之,要求可读性与结构性比较好,可能代码会增多。
就目前发展来说,由于计算机的速度和存储空间的极大提升,程序(算法)的可读性与结构性是主流要求。
我曾经说过,解决一个问题用一行代码和用一千行代码(例子举得比较极端),对计算机运行来说人们的感觉没有什么区别。
你的这个问题,有多种多样的解决方法,想当然的方法,会用到数组和比较复杂的If语句。
我现在用一个方法,请你看看是否觉得简单呢?
在窗体添加2个组合框,Combo1和Combo2,一个 按钮和一个文本框Text1:
代码如下:
Option Explicit
Private XZ As String
Private Sub Command1_Click()
Dim M As String
Dim D As String
Dim d1 As Date
Dim d2 As Date
Dim L As Integer
M = Combo1.Text
D = Combo2.Text
L = InStr(XZ, M)
If D <= Mid(XZ, L + 3, 3) Then
Text1.Text = "你的星座是:" & Mid(XZ, L - 3, 3)
Else
Text1.Text = "你的星座是:" & Mid(XZ, L + 6, 3)
End If
End Sub
Private Sub Form_Load()
Dim i As Integer
Combo1.Clear
For i = 1 To 12
If i < 10 Then
Combo1.AddItem "0" & CStr(i) & "月"
Else
Combo1.AddItem CStr(i) & "月"
End If
Next i
Combo1.Text = Combo1.List(0)
Combo2.Clear
For i = 1 To 31
If i < 10 Then
Combo2.AddItem "0" & CStr(i) & "日"
Else
Combo2.AddItem CStr(i) & "日"
End If
Next i
Combo2.Text = Combo2.List(0)
XZ = "魔羯座01月20日水瓶座02月19日双鱼座03月20日白羊座04月20日金牛座05月21日双子座06月21日巨蟹座" & _
"07月22日狮子座08月23日处女座09月23日天秤座10月23日天蝎座11月22日射手座12月21日魔羯座"
End Sub

我这个程序,没有用数组和复杂的If语句,但是,用了Instr()函数,可读性就相对差一些了。
同时2月份,还没有考虑闰年问题以及大月小月问题.
匿名用户
2012-07-24
展开全部
什么是比较简单的语句
追问
菜鸟能看懂的..
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式