vb程序选择结构.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
问题:计算所得税:输入工资。如果工资少于2000,免收所得税。如果工资≥2000,所得税为5%。单击窗体,在窗体上显示工资及所得税的结果。 程序结构:输入、处理、输出。 程序框架: Private Sub Form_Click() 输入工资 如果 工资=2000 那么 所得税 = 工资 * 0.05 否则 所得税 = 0 输出工资、所得税 End Sub 分析:设立变量gz代表工资,sj代表所得税; 输入工资用InputBox函数,并存入变量gz;  输出工资、所得税用Print方法。 程序为: Private Sub Form_Click() Gz=InpueBox(请输入工资, 输入工资) 如果 gz=2000 那么 sj = gz * 0.05 否则 sj = 0  ? 工资;gz;的所得税为;sj End Sub “如果”、“那么”、“否则”如何实现呢? 用程序的控制结构实现。 Vb程序设计选择结构 实际上,“如果”、“否则”是程序的一种控制结构。它的功能是根据条件“工资=2000”是否成立,决定程序下一步的执行方向是“所得税=工资*0.05”还是“所得税=0”。 这种根据条件的不同结果,选择不同的分支的程序结构,称为“选择结构”或“分支结构”。它属于程序的控制结构。 结构化程序设计的基本控制结构有3种: (1) 顺序结构:单线条、无分支、不重复、每个语句均有机会执行,且都仅执行一次。这种结构功能最简单。 (2) 选择结构:即分支结构。 (3) 循环结构:重复执行某块程序若干次。 7.1 选择结构 在VB中,选择结构用If语句实现,故选择结构也称If结构。它有2种格式:单行结构、块结构。 单行If语句 格式1:   If 条件 Then 语句1 Else 语句2 功能:如果“条件”为True,执行语句1,否则执行语句2。 应用:(计算所得税)   If gz=2000 Then sj=gz*0.05 Else sj=0 格式2:   If 条件 Then 语句1 功能:如果“条件”为True,执行语句1,否则什么也不执行,直接执行下一个语句。 应用:(计算所得税)   If gz=2000 Then sj=gz*0.05 “条件”:可以是关系表达式(单条件),也可以是逻辑表达式(复合条件)。 应用:工资在2000—3000之间所得税为5% If gz=2000 And gz3000 Then sj=gz*0.05 “语句”:可以是单个语句,也可以是多个语句(复合条件,用冒号分隔)。 应用:工资超过2000所得税为5%,显示姓名、所得税,否则显示姓名、说明“不用纳税”。 If gz=2000 Then sj=gz*0.05 : ? 姓名,sj Else ? 姓名,不用纳税 缺点:语句太长,结构不分明,容易出错。 改进:用If语句的块结构。 块结构If语句 1.最简单的块结构是: If 条件1 Then  语句块1 End If   这种结构是单分支结构。 应用:单行结构的   If gz=2000 Then sj=gz*0.05 改为块结构: If gz=2000 Then sj=gz*0.05 End If 与单行If语句相比,最后多一行End If语句作为If结构的结束,但程序结构非常分明、容易阅读。缺点是程序行数增加,显得冗长。 2.最常用的结构是: If 条件1 Then  语句块1 Else 语句块2 End If 这种结构是双分支结构。 应用:工资超过2000所得税为5%,显示姓名、所得税,否则显示姓名、说明“不用纳税”。 If gz=2000 Then sj=gz*0.05 : ? 姓名,sj Else ? 姓名,不用纳税 改为用块If结构,程序为:   If gz=2000 Then sj=gz*0.05 ? 姓名;sj Else ? 姓名;不用纳税 End If 这种双分支结构有时可以用IIF函数替代。 函数格式: 变量=IIF(条件,True部分,False部分) 例如:工资超过2000所得税为5%,否则为0。 用IF结构写为:  If gz=2000 Then Sj=gz*0.05 Else Sj=0 End If 改用IIF函数则写成:  sj=IIF(gz=2000, gz*0.05, 0) 对于:工资超过2000所得税为5%,显示姓名、所得税,否则显示姓名、说明“不用纳税”。 这种情况能不能用IIF函数? 什么时候用单行结构?什么时候用块结构? 当语句块只有一个语句时,一般用单行结构; 当语句块不止一个语句时,一般用块结构; 当结构比较复杂时,一般也用块结构。

文档评论(0)

803322fw + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档