第3章 选择结构
第三节 选择结构
第三节选择结构一、教材分析选择结构是VB程序设计的基本结构之一,在解决有条件选择问题上.具有自己的优势。
选择结构在数学分析中应用非常广,根据不同的可能性,设计不同的流程,执行不同的程序。
本节将通过一系列活动的实践使学生掌握实现选择结构的基本语句,了解控制选择结构程序执行的判断条件的构成。
本节的两个活动,在设计上具有一种递进关系,对同一个需要解决的问题采取条件变换的形式,实现由简单到多重选择结构程序语句的教学,然后通过多重选择结构程序与专用的多分支选择语句程序的对比分析和运行,让学生体验不同选择语句的适用情况。
存所有活动的实践过程中,对选择条件的处理贯穿始终,是学习选择结构的重要线索,能否对其充分理解,将直接关系到选择结构的学习效果。
活动一:用if语句实现简单选择结构。
本活动通过对书城发放购书券活动条件的分析,设计算法流程,根据流程完成程序编写,在设计的过程中使学生认识if语句,了解选择条件。
这样做旨在使学生通过算法分析与程序的执行情况,探究选择条件是如何控制程序的运行的。
活动二:用if语句的嵌套实现多重选择结构。
在日常生活中,我们经常涉及对复杂条件进行判断,本活动的设计就是使学生对活动一中条件进一步复杂化时也能分析设计,用if语句的嵌套实现多重选择结构,旨在让学生体验在程序中如何设计多重条件,学会如何利用多重条件控制选择结构程序的执行。
活动三:使用多重选择语句实现活动二的程序。
尽管用if语句能够实现多重选择结构,但是程序的可读性和效率较差,因此,VB提供了一种专用的多重选择语句,根据选择的条件,可以非常方便地进行多重选择程序设计,本活动通过学生阅读程序代码,了解该语句的使用过程及其相应的功能。
通过与活动二程序的对比分析,使学生了解每种语句的适用范围。
教学目标教学难点编者设计了三个活动,让学生对具体问题进行程序化设计,通过不同的选择语句实现对各种选择流程的控制。
学生能够使用选择语句实现各种选择流程的控制是本节的重点内容,其中,根据对问题的分析,设计决定选择程序执行不同流程的控制条件,是本节的难点。
C语言程序设计ppt课件-第3章-选择结构
本章主要内容
1
选择结构
在解决大量的实际问题时,常常需要根据不同的 情况或条件,制定出不同的解决方案或对策。
选择结构是通过对条件 的判断来选择执行不同 的程序语句。
选择结构
一个程序若具有了判断和选择功 能,就具备了最基本的智能。
的完整的解题步骤。
void main() { int x,y,z,max;
printf("“\n Please input x,y,z: ");
➢将同影一响问到题算可法用乃不至同程算序法的解效决率,sifc(a。xm而n>afy(一一x)"=%x个个;d%算算d法法%d的的",&评质x价,量&y主优,&要z劣); 从时间复杂度和空间复杂度来els考e 虑。
max=y;
例从键盘输入三个不同的、无序if(mm的aaxx整<=zz)数; ,并分别存放 到变量x、y、z中,然后通过pr判int断f("输\n 出ma三x=%个d数\n"中,m的ax)最;
大数。要求将最大数存放在} 变量max中。
25
语法练习(单选题)
1.设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中
switch语句的应用
关例键从语键句盘:上输入一个学生的总平均成 绩能用(i大f- e于ls0e且if来小替于换10吗0)? swi,tc按h(分(i数nt段)(评sc定or出e/成10绩.的0)相) 应等级,90以上为A级,80~
{89为caBs级e ,97:0~g7r9a为dCe=级'A,'6;0~br6e9a为k;D级,59以下为E级。 问题分ca析se:s8w:itchg语ra句de中='的B表';达b式re只ak能; 是整型或字符型,所 以可c用as成e 绩7的:高位gr数ad字e=来'C确';定b其re对a应k;的分数段,而每一个 分数c段as又e对6应:swigtrcha中de的='一D'路; 选br择ea。k;可用表达式“((int)(成 绩/1c0)a)s”e 计5算:出成绩的高位数字 ,其中,“(int)”的功能 是将c表as达e式的4:值强制转换成整数。
C#第3章
对于这些选择结构,除了可以利用if语句来实现以 外,还可以用switch语句来完成。
3.2 if语句——二分支选择语句
C#程序设计教程——蒙祖强编著
为表述方便,我们将if语句分为三种类型:
if…语句
C#程序设计教程——蒙祖强编著
Console.Write("请输入出行月份(1-12):"); 游客在其他月份出行,怎样出现提示信息? int mon = int.Parse(Console.ReadLine()); if (mon >= 5 && mon <= 10) { Console.WriteLine("旺季出行,机票不打折"); } else { Console.WriteLine("淡季出行,机票打折"); } Console.ReadLine();
3.2 if语句——二分支选择语句
C#程序设计教程——蒙祖强编著
3.2.2 if…else…语句(续)
【例3.3】 编写一个窗体应用程序,使之能够对给 定的实数进行四舍五入。 创建C#窗体应用程序Rounding,界面如下图:
3.2 if语句——二分支选择语句
C#程序设计教程——蒙祖强编著
3.2.2 if…else…语句(续)
——分段函数的实现
C#程序设计教程——蒙祖强编著
【例3.1】 构造一个C#控制台应用程序,使之实 现下列分段函数的功能:
3.1一个简单的选择结构程序
——分段函数的实现
C#程序设计教程——蒙祖强编著
3.1.1 创建C#控制台应用程序 创建一个控制台应用程序PiecewiseFunction:
第3章--选择结构--参考答案
main( )
{
int k;
scanf("%d",&k);
switch (k)
{
case 1: printf("%d\n",k++);
case 2: printf("%d\n",k++);
case 3: printf("%d\n",k++);
case 4: printf("%d\n",k++); break;
default: printf("Full!\n");
}
}
A) 1 B) 2
C) 2 D) 1
3 2
4 3
5 4
D
29.执行下面程序时,若从键盘输入"2<CR>",则程序的
运行结果是( )。
#include <stdio.h>
main( )
{ int j,k; char cp;
cp=getchar( );
顺序分支结构选择题:
1.设ch是char型变量,其值为A,且有下面的表达式:
ch=(ch>='A'&&ch<='Z')?(ch+32):ch
上面表达式的值是
A) A B) a
C) Z D) z
B
2.设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,
值为0的表达式是
A) 'a'&&'b' B) a<=b
C语言程序设计 第3章结构化程序设计的三种基本结构
其中输出函数printf( )只原样显示一个普通的字符串,用来 提示用户输入的数据是“成绩”。 ⑦如果是多个参数时,参数之间必须必须用逗号分隔,每 个参数要求是一个表达式(单独一个变量是表达式的特殊情 况),参数的个数和类型要与格式控制串中的格式说明符的 个数和类型相匹配。
③不可打印的特殊字符指的是该字符不能直接从输出设备输出, 也称为“转义字符”,转义字符用转义序列来表示。所谓转义 序列是用来表示字符的一种方法,即用该字符的ASCII值表示, 具体的格式为:\字母。其中: “\”表示转义字符序列的标识符,表示后面的字符是转义字符, 即是不可打印的字符; “字母”表示不可打印的转义字符,用来使输出设备输出某一 种格式,c语言中的常用转义字符如表3.4所示。
int a=4; float x=3.14; char c=’A’; 也可以对几个变量赋同一个初值,例如: int a=4,b=4,c=4; 也可以只对部分变量赋初值,例如: int a=4, b,c;
【例3.1】算术赋值运算符的使用。 #include <stdio.h> void main ( ) {
修饰符
功能说明
字母l
表示输入长整型整数,可加在格式说明符d、o、x 前面
m 表示输出数据的最小宽度 m.n 表示输出总宽度占m列,其中小数位占n位
- 表示输出的数字或字符在输出区域内向左靠
⑥如果是0个参数时,即该函数中只有格式控制串部分, 没有参数表部分,二者之间的逗号可以省略。这时格式控 制串部分是一个普通的字符串,该字符串将原样显示在屏 幕上,常常用来作为提示信息或字符串的输出。例如:
A
c语言选择结构程序设计教案
C语言选择结构程序设计教案第一章:选择结构概述1.1 选择结构的概念介绍选择结构的基本概念和作用解释条件语句的语法和用法1.2 条件运算符介绍条件运算符的概念和语法演示条件运算符的使用方法和注意事项1.3 选择结构的执行流程解释选择结构的执行流程和条件判断原理通过示例程序展示选择结构的执行过程第二章:if语句2.1 if语句的基本语法介绍if语句的语法结构和使用方法解释条件表达式的真假判断2.2 if语句的嵌套讲解if语句的嵌套结构和规则通过示例程序演示if语句的嵌套应用2.3 if语句的注意事项强调if语句的注意事项,如条件表达式的正确性、代码的可读性等第三章:switch语句3.1 switch语句的基本语法介绍switch语句的语法结构和用法解释case标签和break语句的作用3.2 switch语句的执行流程解释switch语句的执行流程和条件判断原理通过示例程序展示switch语句的执行过程3.3 switch语句的注意事项强调switch语句的注意事项,如输入变量的类型、case标签的覆盖等第四章:选择结构的综合应用4.1 综合应用实例一:成绩判断程序介绍一个简单的成绩判断程序实例分析程序中的选择结构和逻辑运算符的使用4.2 综合应用实例二:员工福利计算程序介绍一个员工福利计算程序实例分析程序中的选择结构和循环结构的使用4.3 综合应用实例三:日期判断程序介绍一个日期判断程序实例分析程序中的选择结构和时间处理的方法第五章:选择结构的编程技巧5.1 选择结构的优化介绍选择结构的优化方法和原则通过示例程序展示优化前后的差异5.2 选择结构的扩展讲解选择结构的扩展方法和注意事项通过示例程序展示扩展选择结构的应用5.3 选择结构与其他程序结构的结合介绍选择结构与其他程序结构(如循环结构、函数结构)的结合方法和原则通过示例程序展示结合后的应用第六章:选择结构与用户输入6.1 用户输入的基本方法介绍如何使用C语言中的输入函数(如`scanf`)获取用户输入。
Fortran教程第三章 选择结构程序设计
所作的处理在其后的块语句中完成。
(3)case default与其后的默认块,是缺省情况,可有可无。
如果加入它,则代表前面所有选择表达式的值皆非的情况下 执行该块。 (4)end select为case结构结束的标志。
例3.3、设计程序,完成小学加、减、乘、除四则运算, 即输入两个数,再输入一个运算符号,做对应的运算,
program exam
implicit none integer n
read *, n
if ( mod(n,3)==0.and.mod(n,5)==0 ) then print *,’该数能同时被3和5整除。’
else
print *,’该数不能同时被3和5整除。’ endif end
块IF结构的组成
program exam3 real g read *,g if (g>=90) then print *,“优秀”
else if( g>=80) then
print *,"良好" else if( g>=60) then
print *, "通过"
else print *,"不及格" endif end
FORTRAN所用的基本逻辑运算有:
.AND.
.EQV.
.OR.
.NEQV.
.NOT.
.XOR.
(1)逻辑与,运算符.AND. 当连接的两个逻辑操作数为真时, 逻辑表达式取值为真,只要一个为假则取假。例如数学表达式 1<X<2,在FORTRAN中应写成逻辑表达式:X>1.AND.X<2。
(2)逻辑或,运算符为.OR. 连接的两个逻辑操作数只要有一个 为真时,逻辑表达式取值为真,全部为假时才为假。例如|X|>5,
VB第3章第3节2-Select语句
第3章 面向对象程序设计——第3节 2 选择结构语句
程序: Dim Num1 As Integer, Num2 As Integer Dim SExp As String Dim Result Dim NOk%, NError%
'两个操作数 '计算结果
'统计计算正确与错误数
Private Sub Button2_Click(……) Handles Button2.Click
Txtoutput.Text = "---------------"
Txtoutput.Text = Txtoutput.Text & vbCrLf & “一共计算 ” & _
(NOk + NError) & " 道题" Txtoutput.Text = Txtoutput.Text & vbCrLf & “得分: ” & _ Int(NOk / (NOk + NError) * 100) & "分"
第3章 面向对象程序设计——第3节 2 选择结构语句
(7)计算机执行Select Case语句的过程: 计算测试表达式的值并与语句中各Case子句中 表达式的值进行比较。如果相等,就执行与该 Case相关联的语句。
若没有一个Case子句的值与测试表达式的值相
等,则执行Case Else部分的语句。 若无Case Else部分,则直接执行Select Case语句的后 继语句。
No
Case ② Yes 语句块2
No
Case ③ Yes 语句块3
No (Case Else)
语句块4
第3章 选择结构.
if、else、switch、while、do和for等都是C++关键字。 这些关键字是该语言保留的,用于实现C++控制结构的不同 特性。关键字不能作为变量名等一些标识符。注意,将关键 字while的拼写变为“While”是个语法错误,因为C++是区分 大小写的语言。while、if和else等所有C++保留关键字只能 包含小写字母。
格式2 :
if (条件表达式) { 语句1; 语句2; …… } 若条件成立时,要执行的操作由多个句子构成, 我们必须把这些句子括在一对花括号{ }内,我们称 这种形式为语句块或复合语句。 程序设计风格提示:书写语句块(也称为复合 语句)时,左右花括号要对齐,组成语句块的各语 句要相对花括号缩进一层并对齐。
第二节 if选择结构
C++提供三种选择结构,即if选择结构、if-else选择结构 和switch选择结构。 一、if语句(单分支结构) 格式1:
if (条件表达式) 语句1;
功能:如果条件表达式的值为真, 即条件成立,语句1将被执行。否则, 语句1将被忽略(不被执行),程序将 按顺序从整个选择结构之后的下一条 语句继续执行。执行流程如图3-1所示 说明:格式中的“条件表达式”必 须用圆括号括起来。
三章程序的控制结构
else
// 一般情况
{
delta = b*b-4*a*c;
p = -b/(2*a);
q = sqrt(fabs(delta))/(2*a);
if(delta >= 0)
// 实根情况
cout << "x1 = " << p+q << endl << "x2 = " << p-q << endl;
else
{
case 数值1: 语句序列1;
表达式的值等于?
case 数值2: 语句序列2;
数值1
数值2
数值3
case 数值3:
语句序列1 语句序列2
语句序列3
…
语句序列3;
...
default: 语句序列n;
图3.6 switch语句
}
其他 语句序列n
12
实现真正的多路选择
在每一个case模块的最后加上一个break语句
if(( a==0 ) && ( b==0 ) && ( c==0 )) // 最极端情况
cout << "方程的根可为任意值" << endl;
else if(( a==0 ) && (b != 0))
// 转换为一元一次方程情况
cout << "x1 = x2 = " << -c/b << endl;
10
例 3-3:求一元二次方程的根
#include <iostream>
第三章 pascal选择结构程序设计
第三章 选择结构程序设计在许多情况下,语句执行的顺序依赖于输入的数据或中间运行结果。
在这种情况下,必须根椐某个变量或表达式的值作出判断,最后决定执行哪些语句或跳过不执行哪些语句。
我们称这种程序结构为选择结构。
PASCAL 中可实现选择功能的语句有if 语句和case 语句。
本章主要介绍这两个语句的应用。
在某种情况下,当满足某个条件时,我们需要连续执行多个语句,在PASCAL 语言中为了让结构清晰,允许我们把多个语句组成一个复合语句,这样一个复合语句的使用就可看作一个语句使用。
在PASCAL 中复合语句组成的一般形式及语法图如下:begin <语句1>; <语句2>; . . . . . . <语句n>; end 1.if 语句的一般形式及语法图如下:if <布尔表达式> then <语句1> else <语句2> ;例3.1 编程实现读入两个数,求第一个数除以第二个数的值。
程序如下: program rzy8; var a ,b ,begin if end .1.if 语句主要用于处理两条分支的情况,有些情况下会遇到多条分支的情况,这时使用if 语句就显得非常不方便,程序结构变得混乱,为此PASCAL 语言提供了case 语句。
case 语句的一般形式及语法图如下:N-S 框图描述case <表达式> of<常量表1> :<语句1>; . . . . . .<常量表n> :<语句n>;else <语句n+1> ; end ;例3.2 某校对学生的学科成绩评定分为A ,B ,C ,D 四个级别,分级方法是:100至90为A 级,89至80为B 级,79至60为C 级,59至0分为D 级,其它分数即显示输入错case 语句误。
试编程序,实现从键盘输入学生成绩,则可输该成绩的评级。
[Python语言程序设计][刘卫国]第3章 选择结构 配源代码
例 硅谷公司员工的工资计算方法如下: (1)工作时数超过 120小时者,超过部分加发 15%。 (2)工作时数低于60小时者,扣发 700元。 (3)其余按每小时84元计发。 输入员工的工号和该员工的工作时数,计算应发 工资。
分析:为了计算应发工资,首先分两种情况,即 工时数小于等于120小时和大于120小时。工时数超过 120小时时,实发工资有规定的计算方法。而工时数 小于等于120小时时,又分为大于60和小于等于60两 种情况,分别有不同的计算方法。所以程序分为3个 分支,即工时数>120、60<工时数≤120和工时数≤60, 可以用多分支if结构实现,也可以用if的嵌套实现。
例 写出下列条件。 (1)判断年份year是否为闰年。 (2)判断ch是否为小写字母。 (3)判断m能否被n整除。 (4)判断ch既不是字母也不是数字字符。 条件1:(year%4==0 and year%100!=0) or year%400==0 条件2:ch>='a' and ch<='z' 条件3:m%n==0或m-m/n*n==0 条件4: not((ch>='A' and ch<='Z') or (ch>='a' and ch<='z') or (ch>='0' and ch<='9'))
单分支if语句的执行过程
注意: (1)在if语句的表达式后面必须加冒号。 (2)因为Python把非0当作真,0当作假, 所以表示条件的表达式不一定必须是结果为 True或False的关系表达式或逻辑表达式,可 以是任意表达式。 (3)if语句中的语句块必须向右缩进,语 句块可以是单个语句,也可以是多个语句。 当包含两个或两个以上的语句时,语句必须 缩进一致,即语句块中的语句必须上下对齐。 (4)如果语句块中只有一条语句,if语句 也可以写在同一行上。例如:
语言选择结构文稿演示
int main() { int flag; //非0为真;0为假
上完体育课
scanf(“%d”,&flag); 是 if(flag!=0)
否 最后一节课
printf(“食堂吃饭”);
else
到食堂吃饭
进教室上课
printf(“进教室上课”);
return 0;
}
if语句的使用说明
if后面的表达式,一般为逻辑表达式或关系表达 式,也可以是一个变量、常量或函数调用。 if(a==b && x==y) /*逻辑表达式*/ printf(”a=b,x=y”);
单行书写
多行书写
有缩进
if(a>b) max=a; else max=b;
if(a>b) max=a; else max=b;
if(a>b) max=a;
else max=b;
推荐写法,这样层次 结构更清晰
【例】上完体育课,如果是上午最后一节课,下课
#i后nc去lu食de堂<s吃td饭io,.h否> 则进教室上课。
if(1) printf(”O.K.”); /*表达式为常量*/ if(a) printf(”%d”,a); /*表达式为变量*/ if(isprime(a)) … /*表达式为函数调用*/
if语句的使用说明
if语句各子句若仅有一条语句,则每个内嵌语句 遇分号结束。 if(x>0) printf(”%f”,x);建议:内嵌语句无 else printf(”%f”,-x); 论一条或多条,都 若内嵌语句包含多个语句时,必用须“用{}”花括括起号来。
return 0;
}
if语句实现的选择结构
if-else语句 if (表达式) 语句段1 else 语句段2
第三章Matlab的选择结构
第三章Matlab的选择结构第三章 Matlab的选择结构3.1 程序编写的⼀般步骤3.2 关系运算符 1) 0表⽰假,⾮0表⽰真; 2) ~=:不等于; 3) sin(pi) ~= 0:为1,⽐较a、b两个数是否相等⽅法:abs(a - b)<1.0e-143.3 逻辑运算 1) 先与&后或|3.4 逻辑函数与短路运算 1) 短路运算:&&、||;⾮短路运算:&、| 2) ischar(x)、isempty(x)、isinf(x)、isnan(x):是否不是数、isnumeric(x):是否是数 3) 1/0 = Inf 是数;0/0 = NaN 不是数3.5 if语句1) 语句结构:”if"开始,"end"结束if exp_1 block_1elseif exp_2 block_2... ...else block_nend3.6 流程图的绘制3.7 if语句的嵌套3.8 switch1)switch(value) case{1,3,5,7,9}, block_1; case{2,4,6,8}, block_2; ... ... otherwise, block_nend3.9 try_catch结构try block_1catch block_2end3.10 多个图像窗⼝与⼦窗⼝ 1) figure(n):图像窗⼝命令; 2) subplot(m,n,p):图像窗⼝中有m*n个⼦窗⼝,p是当前操作窗⼝;3.11 图像的增强控制 1) plot(x1,y1,LineSpec,...,xn,yn,LineSpec) 2) plot(x1,y1,LineSpec,'PropertyName',PropertyValue) 3) LineWidth:⽤来指定线的宽度 4) MarkerEdgeColor:⽤来指定标识表⾯的颜⾊ 5) MarkerFaceColor:填充标识的颜⾊ 6) MarkerSize:指定标识的⼤⼩例:x = -pi:pi/10:pi;y = tan(sin(x)) - sin(tan(x));plot(x,y,'--rs','LineWidth',3,...‘MarkerEdgeColor','k',...‘MarkerFaceColor','g',...‘MarkerSize',10)3.12 ⽂本的⾼级控制...。
c++ 语言 选择结构程序设计
else
cout<<"X < Y\n"; Enter integer x, y: 12, 23
else
X<Y
cout<<"X == Y\n";
Enter integer x, y: 12, 6
}
X>Y
Enter integer x, y: 12, 12
精选完整ppt课件X==Y
13
➢ if语句嵌套: 一般形式:
if (expr1) if (expr2) statement1 else statement2
内嵌if
if (expr1) if (expr2) statement1
else statement3
内嵌if
if (expr1) statement1
else if (expr3) statement3 else statement4
case score >= 60 && score < 70 : cout<<" E"; break;
default :
cout<<" F"; break;
}
精选完整ppt课件
20
课堂练习2.
写程序实现输入一个整数,如果分数为: 90-100输出“A”; 80-89 输出“B”; 70-79 输出“C”; 60-69 输出“D”; 59以下输出“F”; 其它, 输出“输入错误”。
int a = 1, b = -1;
eilfse…(a…> 0) else……if (b > 0)
if (a > 0) {
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例如, 例如,例3.4中二次方程求根的If语句可以改为下面的形式: 中二次方程求根的If语句可以改为下面的形式: If语句可以改为下面的形式
If a = 0 Then x1 = "不是二次方程 不是二次方程" 不是二次方程 x2 = x1 Else 'a≠0 ≠ ‘内嵌 语句开始。 D≥0,方程有两个实根 内嵌If语句开始 内嵌 语句开始。 ≥ , If Abs(D)>=1.0E-6 Then x1=(-b + Sqr(D))/(2 * a) x2 = (-b - Sqr(D)) / (2 * a) Else p = -b / (2 * a) q = Sqr(-D) / (2 * a) x1 = p & "+" & q & "i" x2 = p & "-" & q & "i" End If End If '内嵌 语句结束 内嵌If语句结束 内嵌 'a=0, 不是二次方程
形式 (1)表达式 ) (2)一组用逗号分隔的枚举值 (3)表达式1 To 表达式2 表达式1 表达式2 (4)Is 关系运算符表达式 示例 Case 100+a Case 2,4,6,8 Case 1 To 10 Case Is > 20 说明 数值或字符串表达式 测试表达式的值等于2,4,6,8之一 测试表达式的值等于 , , , 之一 1 ≤ 测试表达式的值 ≤ 10 测试表达式的值 > 20
设计一个程序,输入成绩, 【例3.5】设计一个程序,输入成绩,根据以下条件判断成 绩的等级: 绩的等级: 90~ 等级A 90~100 等级A 80~ 等级B 80~89 等级B 70~ 等级C 70~79 等级C 60~ 等级D 60~69 等级D 60以下 等级E 60以下 等级E 新建工程,在窗体中添加两个标签,一个文本框, (1)新建工程,在窗体中添加两个标签,一个文本框,一 个标题为“显示等级”的命令按钮。 个标题为“显示等级”的命令按钮。 显示等级”按钮的单击事件编写如下代码: (2)为“显示等级”按钮的单击事件编写如下代码:
(2)编写程序代码。“判断”命令按钮的Click事件代码如下: 编写程序代码。 判断”命令按钮的Click事件代码如下: Click事件代码如下 Private Sub Command1_Click() Dim x As Integer x = Val(Text1.Text) If x Mod 2 = 0 Then Label2.Caption = x & " 是偶数。" 是偶数。 End If End Sub “清除”命令按钮Click事件的代码如下: 清除”命令按钮Click事件的代码如下: Click事件的代码如下 Private Sub Command2_Click() Text1.Text = "" Label2.Caption = "" End Sub 运行结果如图4 所示。 运行结果如图4.5所示。 图4.5 If...Then示例 示例
【例3.4】求一元二次方程ax2+bx+c=0的根。 求一元二次方程ax2+bx+c=0的根。 ax 设计步骤如下: 设计步骤如下: ( 1 ) 新建工程,在窗体上添加五个文本框、 两个命令按钮和五 新建工程, 在窗体上添加五个文本框 、 个标签。文本框均采用默认名称,Text属性均为空 属性均为空。 个标签。文本框均采用默认名称,Text属性均为空。其他对象的 属性设置如表4 所示。 属性设置如表4.1所示。
2. If…Then Else结构 If Then…Else结构 Then Else
If 条件 Then 语句块1 语句块 Else 语句块2 语句块 End If
语句块 1 语句块 2
T
条件
F
图 4.6
If...Then...Else 结构
【例3.2】改进例3.1,使程序能判断整数的奇偶性。 改进例3 使程序能判断整数的奇偶性。 分析:判断某数的奇偶性,就是检查该数能否被2整除, 分析:判断某数的奇偶性,就是检查该数能否被2整除, 若 能被2整除,该数为偶数,否则为奇数。 能被2整除,该数为偶数,否则为奇数。
T
语句(块)
图 4.4
If...Then 结构
【例3.1】编写程序,在文本框中输入一个整数,判断该数是不是偶数。 编写程序,在文本框中输入一个整数,判断该数是不是偶数。 分析:判断某整数的奇偶性,可以检查该数能否被2整除。若某数能被2 分析:判断某整数的奇偶性,可以检查该数能否被2整除。若某数能被2整 则该数为偶数。 除,则该数为偶数。 设计步骤如下: 设计步骤如下: (1)建立用户界面,设置对象属性。各对象的属性如表3.1所示。 建立用户界面,设置对象属性。各对象的属性如表3 所示。 表3.1 例3.1对象属性 3.1对象属性
第3章 选择结构 章
If语句 3.1 If语句 Select语句 3.2 Select语句 3.3 单选按钮复选按钮和框架 3.4 滚动条 3.5 定时器
If语句 3.1 If语句
If…Then Then结构 1. If Then结构 If…Then Else结构 Then…Else 2. If Then Else结构 If...Then...ElseIf结构 ...Then...ElseIf 3. If...Then...ElseIf结构 4. If语句的嵌套 If语句的嵌套
If语句的嵌套 4. If语句的嵌套
嵌套是指在一个控制结构中插入另一个控制结构。If语句 嵌套是指在一个控制结构中插入另一个控制结构。If语句 的嵌套是指在一个If语句中插入另一个If语句。内嵌的If If语句中插入另一个If语句 的嵌套是指在一个If语句中插入另一个If语句。内嵌的If 语句可以出现在关键字Then Else之后的语句块中 If语 Then或 之后的语句块中。 语句可以出现在关键字Then 或Else之后的语句块中。If 语 句嵌套常用于复杂的多分支选择,它的一般形式如下: 句嵌套常用于复杂的多分支选择,它的一般形式如下: If 条件 Then 条件1 … If 条件 Then 条件2 … End If … End If
图 4.9 If...Then...ElseIf 结构
语句块 1 条件 1
F F …
条件 n
T
条件 2
F
T
T
语句块 2 语句块 n 语句块 n+1
设计一个程序,输入成绩, 【例3.3】设计一个程序,输入成绩,根据以下条 件判断成绩的等级: 件判断成绩的等级: 90~100 等级A 90~ 等级A 80~ 等级B 80~89 等级B 70~ 等级C 70~79 等级C 60~ 等级D 60~69 等级D 60以下 等级E 60以下 等级E
If...Then...ElseIf结构 3. If...Then...ElseIf结构
语法格式如下: 语法格式如下:
If 条件 Then 条件1 语句块1 语句块 ElseIf 条件 Then 条件2 语句块2 语句块 ... ElseIf 条件 Then 条件n 语句块n 语句块 Else 语句块n+1 语句块 End If
注:标签Label7用于显示二次方程通式的指数,六号字。
分析: (2) 分析 : 首先应判断方程中二次项的系数 a: 若 a=0, 则不是二次方程 , 不作求根运算 ; 若 a≠0, 则不是二次方程, 不作求根运算; 的值求根。 则根据判别式b2-4ac的值求根。方程的根有三种 情况: 情况: ① b2-4ac=0,方程有两个相等的实根; 方程有两个相等的实根; 方程有两个不等的实根; ② b2-4ac>0,方程有两个不等的实根; ③ b2-4ac<0,方程无实根,有两个共轭复根。 ,方程无实根,有两个共轭复根。
返回本节 返回首页
1. If…Then结构 If Then结构 Then
If…Then If Then 结 构 的 流 程 如 图 4 . 4 所 示 。 该 结 构 表 示 如果条件满足就执行Then后边的语句, Then后边的语句 “如果条件满足就执行Then后边的语句,否则不执 行任何操作” 语法格式如下: 行任何操作”。语法格式如下: F (1)单行形式 条件 If 条件 Then 语句 (2)块(多行)形式 多行) If 条件 Then 语句块 End If
Private Sub Command1_Click() Dim x As Integer x = Val(Text1.Text) If (x Mod 2) = 0 Then Label2.Caption = x & " 是偶数 是偶数" Else '增加 增加Else子句 显示奇数 子句, 增加 子句 Label2.Caption = x & " 是奇数 是奇数" End If End Sub
值表 1
T
语句块 1
F T
值表 2 语句块 2
F T
值表 n 语句块 n
…
F
语句块 n+1
End Select
语句
4.10
Select Case 语句
说明: 说明: (1)“测试表达式”可以是数值表达式或字符串表达式。 ) 测试表达式”可以是数值表达式或字符串表达式。 测试表达式”的类型必需相同。 (2)“值表”与“测试表达式”的类型必需相同。 ) 值表” (3)当使用多个表达式组成 “值表”时 ,表达式与表达式之间 )当使用多个表达式组成“值表” 要用逗号隔开。 要用逗号隔开。 值表”由以下形式的表达式组成: (4) “值表”由以下形式的表达式组成:
ect语句
Select Case 测试表达式 Case 值表 值表1 语句块1 语句块 Case 值表 值表2 语句块2 语句块 … Case 值表n 值表 语句块n 语句块 Case Else 语句块n+1 语句块 End Select