欢迎来到天天文库
浏览记录
ID:16038601
大小:41.50 KB
页数:3页
时间:2018-08-07
《vb中利用if语句实现分支结构》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、VB中利用IF语句实现分支结构1) 什么情况需要使用分支结构如果遇到的问题中带有满足A条件,去干事情1,满足B条件,去干事情2之类的需求时,就需要使用分支结构,比如说,输入一个值,输出它是奇数还是偶数。这个问题中,如果输入的数满足是偶数的条件,就执行输出偶数这个操作(Print“偶数”),如果输入的数满足是奇数的条件,就执行输出奇数这个操作(Print“奇数”),这就是典型的分支结构的需求,此时,从编程的角度,就需要构造一个条件,然后通过IF语句来实现。IF语句的基本语法格式是:if条件then语句1部分else语句2部分endif(这里特别说明一下,在
2、VB中,IF语句的书写格式比较自由,如果语句1部分和语句2部分都非常简单,只有一条语句,就可以将整个IF语句写在一整行上,而且可以省略endif,即写成:if条件then语句1else语句2)针对上题,我们考虑到奇数除2余数为1,偶数除2余数为0,因而可以将输入的数除2求余数,然后通过判断余数的值来判断数据的奇偶性。完整的程序如下:dimnasintegera=val(text1.text)ifamod2=0thenprint“偶数”elseprint“奇数”endif 注意:此时if语句也可写成:ifamod2=0thenprint“偶数”elsepr
3、int“奇数”这种写法中,省略了endif 其实了解了IF语句,大家可以发现利用IF语句进行编程,类似于进行英文翻译,比如,我们用汉语描述刚才的解题步骤,一般可以说:如果a对2求余等于0,那么就输入偶数,否则输出奇数,刚才的表述中,讲到如果的时候,就用if,讲到否则的时候就用else即可。 2)用if…elseif…else…endif实现多分支结构当遇到的情况超过2种,就需要使用多分支IF语句。VB中用IF语句解决多分支有两种方法,一种就是本方式,另一种是利用IF语句的嵌套(即可多个IF语句嵌套在一起),嵌套方式在第3点内讲述。本方式有一个特别需要注意
4、的是,if…elseif…else…endif这种格式是一条语句,只有一个if和一个endif,根据要解决问题,来决定需要几个elseif部分以及需不需要else部分。一个简单的例子:输入x的值,输出y值,满足 2x+1 当x=3 2x-1 当x=5y= 3x+4 当x=9 9x-8 当x=6 条件,对于其它的x值,不进行计算。根据题意,很明显是个4分支的问题,我们使用if…elseif…结构来编程(跟上题描述的一样,大家也以先想想用汉语怎么讲这个问题):ifx=3then‘如果x=3那么y=2*x+1e
5、lseifx=5then‘其实此处,我们用汉语讲应该是否则如果x=5那么,所以要写elseify=2*x-1elseifx=9theny=3*x+4elseifx=6then‘特别要注意的是,此处不能用else,因为我们必须要判断x是否为6y=9*x-9endif 如果上题加个要求,说,对于其它的x值,提示出错,那么就要加上else部分ifx=3theny=2*x+1elseifx=5theny=2*x-1elseifx=9theny=3*x+4elseifx=6theny=9*x-9elseprint“error”endif 3)用嵌套if语句实现多分
6、支结构用嵌套if语句也可以实现多分支结构,它的应用原理就是在if语句内部嵌套if语句。基本格式为:if条件1then‘最外层if语句if条件2then‘内层if语句1语句1else语句2endifelseif条件3then‘内层if语句2语句3else语句4endifendif大家从此格式中可以看出,本例就是一个外层if语句内,嵌套了两个内层if语句,其中蓝色的if语句出现在外层if语句的条件if部分,表示当条件1满足时才执行蓝色if语句,同理,当条件1不满足时,才执行绿色if语句。当然,上面只是一个示例,其实内层if语句不是必须的,如果内层没有if嵌套
7、,那只是一个普通的if语句了。而且,内层if语句内部还可以继续嵌套再下一层的if语句,去解决更多情况。在上例中,我们可以得出:当条件1满足,条件2也满足时,就会执行语句1当条件1满足,条件2不满足时,就会执行语句2当条件1不满足,条件3满足时,就会执行语句3当条件1不满足,条件3也不满足时,就会执行语句4而且需要注意的是,由于上例中出现了三个if语句,那么相应的也要有三个endif。在这一点上,和if…elseif…else…endif结构是不同的。同样对于上面那个题目,如果用嵌套的if语句来实现,我们可以写成:ifx=3theny=2*x+1elsei
8、fx=5theny=2*x-1elseifx=9theny=3*x+4elsei
此文档下载收益归作者所有