a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 70|回复: 0

[Visual Basic] 2011年度计算机等级考试二级VB基础教程(16)

[复制链接]
发表于 2012-7-31 22:10:12 | 显示全部楼层 |阅读模式
 4.3 选择结构(或称分支结构)  1. IF条件语句" S; H: }  h% Z2 S+ U) h
  (1)If……Then语句(单分支结构 F)) J: _1 G/ A4 B7 }
  语句形式:
8 _. b# B8 ?' G7 g  F9 Q# D  1)If  Then  J. z. C- j4 Q0 L$ k1 |$ X7 B3 X
  语句块
! V  ?! s6 o  j  W+ ?; U  End If
9 G9 |- J5 i8 x7 |  2)If  Then
9 l! E: Y6 B, k9 Z# Y) S. W+ v& y/ w  说明:表达式一般为关系表达式、逻辑表达式,也可以为算术表达式,非0为True,0为False;% U1 ~  e9 `; Z; q6 s& x8 r
  语句块可以是一句或多句,若用2)表示,则只能是一句语句,若多句,语句间需用冒号分隔,而且必须在一行上书写。
( ~7 r; G! C( T  例:已知两个数x和y,比较它们的大小,使得 x大于y:
9 w% V) p# N6 X; x  方法一: if x
; P. _8 t2 @  Z. U; y2 C4 U  t=x
7 X: `' U: m2 v& l. d) ]5 a  x=y3 ~( ]: }  R( B$ q- T
  y=t! ^+ \, E6 ?8 f3 M# M
  end if
5 r. o" [; E1 s6 [; E  方法二: if x
) X# C, ?' h# v# k" U  注意:将两个变量中的数进行交换时,必须借助于第三个变量才能实现。
+ \4 ^' W3 o2 u' o5 A6 {: E  (2)If……Then……Else语句(双分支结构)
- q5 k! `7 k6 `# G2 \& ?& B) d  语句形式:- U. D8 `6 R4 G% L, ]: w
  1)If  Then& _' I: ^- m1 I1 _: u% W0 T
  
$ X3 T- G- A$ e3 P. {  Else
) M! O- P* t- ]  " Q! ^, r/ u5 c! H" Q% |$ p# L
  End If
6 |' w/ w! }* P8 I6 C$ Z' H  2) If  Then  Else 0 y8 A/ V& U9 a8 ]5 _
  例: x2 -5 x≠0' p6 `" Q. U* z9 E
  3x +2 x=0* k. P) `+ X3 v- ?7 h+ Y
  (3)If……Then……ElseIf语句(多分支结构): ^& W7 d5 z( t7 C& _$ J
  语句形式:
8 Y: j, m! M4 q/ A) a  If  Then6 Z# I; M/ t  H4 p/ h
  2 S5 o/ L6 \$ t" b  b
  ElseIf  Then& e$ P& G2 U% m# i. {: M# \5 b
  ; N, U/ \( h0 U+ g  n
  ……
( [" t4 q- K! i0 [) \' ^$ a+ e  [ Else 语句块 n+1 ]0 |8 C, I4 Z, P) h7 C) y, O$ z% [+ w
  End If
3 f5 W, m+ B8 z6 Z+ _" `9 `  注意 :; i% e+ U6 Z4 s6 G$ i  D
  1)不管有几个分支,程序执行了一个分支后,其余分支不再执行;
' L+ _- R9 P$ {8 [7 k  2)ElseIf 不能写成Else If
% i3 u) m, @) p, L8 B( C# h  3)当多分支中有多个表达式同时满足,则只执行第一个与之匹配的语句块
/ U( Y; Y% Y2 p2 B+ a4 y  例:已知变量strC中存放了一个字符,判断该字符是字母字符、数字字符还是其他字符。
- M( n8 n2 t4 Y9 K' i3 E  (4)If语句的嵌套
' q; P9 x9 A; c( w9 w  If语句的嵌套是指if 或else后面的语句块中又包含If语句。语句形式:
: d8 T" Y: O, d, K  If  Then2 ~: D+ Z2 m4 u! [( |5 e
  If  Then
) Q* G9 ^, Y* J. U& ]% _, A% ~  ……
8 B2 a; g. x- X7 }$ p  End If
$ r3 q! a: e/ O8 t* N% m$ q% ?  ……0 N9 c2 u5 Z( F* {/ p2 V; {
  End If
7 x/ q- M; {# E, C; e- u  注意:% Z* ]2 ^6 r- r* a: c/ n
  1)对于嵌套结构,为了增强程序的可读性,应该采用缩进形式书写;" \9 w( w5 l" w( |
  2)If语句形式若不在一行上书写,必须与End If配对,多个if嵌套,End If与它最接近的Emd If配对。( o1 Z  J" x5 c+ b* K# N) O
  例: 已知x、y、z三个数,比较它们的大小并排序,使得x>y>z.
9 y% I' T/ `' v# h- q" [' ~" T  2. Select Case语句(情况语句)( ~, @+ a1 F- L+ l' D
  Select Case语句(情况语句)是多分支语句的又一种形式,语句形式:
* w5 N$ T" o% ?) {; a( z  Select Case 变量或表达式( Q1 ?- m6 k: f0 H8 ?
  Case 表达式列表1
  [* u, m/ t# X# [  F5 X  语句块14 z3 M' |, H# q; [) r
  Case 表达式列表21 D/ G4 ^3 x. [7 H* k9 U
  语句块20 X5 z! Z* f' n( i& q( m7 {
  ……
1 o0 a, |* j/ {  [Case Else
# `5 q& V5 V3 t# V; e# b4 C$ v  语句块n+1]0 n* @! c- |% e6 |1 l
  End Select! w5 v0 N3 Y: r4 i& G# i) J0 c/ Z2 q+ A
  说明:1)变量或表达式可以是数值型或字符串表达式
  _8 }4 D8 l$ m3 S% H  2)表达式列表I 可以是表达式、一组用逗号分隔的枚举值、表达式1 to 表达式2、Is关系运算符表达式;如:case 1 to 10 、 case "a","w","e","t" 、 case 2,4,6,8,is>10
7 R; o2 a# P! ]* Y- }" Z5 H  3)并不是所有的多分支结构都可以用情况语句代替的。
% g( L' M  l( r) q* ]# k  例:已知输入某课程的百分制成绩mark,要求显示对应五级制的评定,评定条件如下:: N0 \$ t% G( J5 |2 u

6 X& x: x# Y, D( ~4 w6 p  3. 条件函数8 |2 g9 K8 E" A: G  W8 r* g4 h
  (1)if函数
& U9 K" e( s5 _/ Z$ J' R  Q5 J. b: V  函数形式: Iif(表达式,当条件为True时的值,当条件为False时的值.例:求X、Y中大的数,并放入变量Tmax中: Tmax=Iif(X>Y, X, Y). c- w- ?- h1 Q! }* V
  (2)Choose函数
/ W: Z; ~4 @& F8 w9 C2 r8 U  函数形式:Choose(整数表达式,选项列表)8 \* o* O- V" d' |$ `2 p6 x
  如果整数表达式的值是1,则选择列表中的第1项,依次类推;如果小于1或大于列表项数时,则返回NULL。& {* c- Q/ y, O7 t! w7 Z0 A+ d. K
  例: 根据nub为1 -4的值,换算成不同的运算符: OP= Choose(nub,“+”,“-”,“×”,“÷”)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-18 10:15 , Processed in 0.156501 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表