新设计信息技术基础课件 讲义 习题第二章 信息的加工第二章 第8节.docx

上传人:b****4 文档编号:27314005 上传时间:2023-06-29 格式:DOCX 页数:20 大小:81.46KB
下载 相关 举报
新设计信息技术基础课件 讲义 习题第二章 信息的加工第二章 第8节.docx_第1页
第1页 / 共20页
新设计信息技术基础课件 讲义 习题第二章 信息的加工第二章 第8节.docx_第2页
第2页 / 共20页
新设计信息技术基础课件 讲义 习题第二章 信息的加工第二章 第8节.docx_第3页
第3页 / 共20页
新设计信息技术基础课件 讲义 习题第二章 信息的加工第二章 第8节.docx_第4页
第4页 / 共20页
新设计信息技术基础课件 讲义 习题第二章 信息的加工第二章 第8节.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

新设计信息技术基础课件 讲义 习题第二章 信息的加工第二章 第8节.docx

《新设计信息技术基础课件 讲义 习题第二章 信息的加工第二章 第8节.docx》由会员分享,可在线阅读,更多相关《新设计信息技术基础课件 讲义 习题第二章 信息的加工第二章 第8节.docx(20页珍藏版)》请在冰豆网上搜索。

新设计信息技术基础课件 讲义 习题第二章 信息的加工第二章 第8节.docx

新设计信息技术基础课件讲义习题第二章信息的加工第二章第8节

第8节 选择结构

知识点

目标

考试要求

算法的程序实现

①赋值语句、选择语句

②解析算法

c

必考+加试

1.选择语句是根据不同的判断结果,选择执行不同的语句。

2.选择语句条件表达式结果的数据类型是逻辑型,值只有True和False两个。

3.行IF语句必须在一行内写完,最后没有EndIf。

4.块IF语句的ElseIF语句部分和Else语句部分是可选的。

5.多选择结构ElseIF语句中,依次从上往下执行条件表达式,如果条件成立,就退出选择结构。

6.单分支结构语句:

If 条件表达式 Then 语句块1

7.双分支结构语句:

If 条件表达式 Then 语句块1 Else语句块2

8.多分支结构语句:

If条件表达式1Then

语句块1

ElseIf条件表达式2Then

语句块2

…………………

ElseIf条件表达式nThen

语句块n

Else

语句块0

EndIf

一个程序不论有多复杂,都是由顺序、选择和循环三种基本结构组成,整个程序可以看成一个大的顺序结构,其中的选择结构和循环结构可以简化为其中一条语句,而循环结构中可以包含选择结构,因此理解选择结构是理解整个程序的开始,是解程序填空和程序改错的开始。

本章内容试着来罗列各种可能碰到的选择结构,以帮助我们来理解这些语句的功能。

一、判断是否符合条件

在程序设计中,往往要找出符合某个条件的值,如查找某个数、验证码是否正确等,此时要用到选择结构,同时输出结论。

【例1】 对于正整数n,若是它平方数的尾部,则称n为同构数,判断一个两位数n是否是同构数的语句,请把下列语句补充完整。

If________________Then

Text1.Text=”是同构数”

Else

Text1.Text=”不是同构数”

End If

解析 本题考核的知识点选择结构的条件和Int函数的应用。

选择结构要关注他的条件,n是它平方数的尾部,n平方数的后两位数为n*nmod100。

答案 n*nmod100=n

[方法总结] 在解此类题目时,要紧紧抓住题目中描述的条件,并找到与条件相关的变量。

【变式训练】 判断当前计算得到验证码变量yzm(整型)与商品识别条码s(文本型)第13位是否相等语句,请把下列语句补充完整。

If________________Then

Text1.Text=”验证通过”

Else

Text1.Text=”验证不通过”

End If

解析 本题考核的知识点是选择结构的条件和Mid函数的应用。

条件为计算结果与最后一位字符相同。

但要注意类型的匹配,前者是数字,后者是数字。

答案 yzm=Val(Mid(s,13,1))

二、判断数x是否能整除数y

在求是否是素数,或者是质因子分解问题时,经常要判断两者是否能整除。

【例2】 输入一个身份证号码s(文本型),如果他的第17位是奇数,表示该公民的性别为男性,否则为女性,请把下列语句补充完整。

If________________Then

Text1.Text=”男性”

Else

Text1.Text=”女性”

End If

解析 本题考核的知识点是选择结构的条件和Mid函数的应用。

取出身份证号码s的第17位的表达式为Mid(s,17,1),但该表达式的值为文本,不能用于算术运算。

判断是否是奇数的条件是除以2后的余数是否为0。

答案 Val(Mid(s,17,1))Mod2<>0

[方法总结] 理解条件的含义是理解选择结构的题眼。

前提还要会表示各种关系。

【变式训练】 若某个在2至(n-1)之间数i能被数n整除,则判定是否是素数的标志变量flag(逻辑型)为假,请把下列语句补充完整。

If__________Then________

解析 本题考核的知识点是选择结构的条件和Mid函数的应用。

条件是被n整除,那么n是被除数。

答案 nModi=0 flag=False

三、判断条件的合理性

在文本框输入某个数值时,必须要符合题目的要求,如身份证号码的长度,二进制中的数字是否只有0和1,判断输入的数是否是整数等等。

【例3】 输出某个温度范围内(从低温t1到高温t2)气体的密度变化情况,在文本框Text1输入温度t1,在文本框Text2输入温度t2,要保证温度t1低于温度t2,把下列语句补充完整。

If__________________Then t=t1:

t1=t2:

t2=t

解析 本题考核的知识点是选择结构的条件和交换语句的应用。

从三条语句t=t1:

t1=t2:

t2=t来看,是要交换t1和t2的值,根据题目的要求,从低温t1到高温t2,因此若t1比t2大时,需要交换两者。

答案 t1>t2

[方法总结] 为了保证程序的可靠性和真实性,通常在程序开始部分要进行判断输入数值的有效性。

关键还是有效性的条件。

【变式训练】 在文本框Text1中输入密码送给变量psd,若密码的长度小于6位,需重新输入密码并退出程序,否则进行密码强度检测等操作。

请把下列语句补充完整。

If________________Then

Text1.Text=""

EndSub

Else

′其他代码略

EndIf

解析 本题考核的知识点是选择结构的条件和Len函数的应用。

条件是长度小于6。

答案 Len(psd)<6

1.判断一个三位数i是否是水仙花数的条件是:

他的各个位数字a、b、c的立方和与他本身是否相等,若相等为水仙花数,请把下列语句补充完整。

If________________Then

Text1.Text=”是水仙花数”

Else

Text1.Text=”不是水仙花数”

End If

解析 本题考核的知识点是选择结构的条件和表达式的应用。

条件是各个数字的立方和与他本身相等,那么各个数字的立方和又该如何表达。

答案 a^3+b^3+c^3=i

2.某单位用户系统登录界面中,正确的用户名和密码分别是“admin”、“Zjcx2018”,在文本框Text1中输入用户名user,文本框Text2中输入密码psd,根据输入情况,在标签Label1中输出相应信息,请把下列语句补充完整。

If____①____Then

Label1.Caption=”用户名不正确”

____②____Then

Label1.Caption=”密码不正确”

____③____

Label1.Caption=”欢迎登录!

EndIf

若用户名和密码均不正确,系统的提示信息是____④____

划线处代码为:

①__________________________________________________

②________________________________________________________________

③________________________________________________________________

④________________________________________________________________

解析 本题考核的知识点是多分支选择结构的条件和语法。

要特别注意条件与对应的语句。

多分支结构中,从上往下匹配条件,如果有一个条件匹配到了,就退出选择结构。

答案 ①user<>”admin” ②ElseIfpsd<>”Zjcx2018” ③Else 用户名不正确

3.若三条线段的长度分别为a、b、c,判断他们是否能构成三角形(任意两边之和大于第三边)的程序段如下,请把下列语句补充完整。

If_________________________Then

Text1.Text=”能构成三角形”

Else

Text1.Text=”不是构成三角形”

End If

解析 本题考核的知识点是选择结构的条件和多条件表达式的表示方法。

任意两边有几种可能性,他们之间是且还是或的关系。

答案 a+b>cAnda+c>bAndb+c>a

4.检测密码强度时,需判断他包含字符种类情况,判断当前字符ch是否是大写字母并记录是否含有大写字母的语句如下,请把下列语句补充完整。

If__________________Thendx=1

语句dx=1与dx=dx+1的区别是:

dx=1表示只要其中一次符合条件,dx的值就为1,相当于他的标志为真,而dx=dx+1的功能是计算符合条件的个数。

解析 本题考核的知识点是选择结构的条件和多条件表达式的表示方法。

条件是大写字母,在字母A与Z之间。

答案 ch>=”A”Andch<=”Z”

5.输入三个数a、b、c,经过某些操作,要求把这三个数按从大到小的顺序依次放在变量a、b、c中,请完善下列程序段

If____①____Thent=a:

a=b:

b=t

If____②____Thent=a:

a=c:

c=t

If____③____Thent=b:

b=c:

c=t

划线处代码为:

①________________________________________________

②______________________________________________________________

③______________________________________________________________

解析 从执行语句来看,是两个变量的交换,把握交换的条件。

答案 ①a

6.用计算机程序模拟扔1000次硬币的过程,用0和1分别表示硬币的正反两个面,用变量a表示0的个数,用变量b表示1的个数。

某次扔硬币的点数(用Rnd函数产生一个0或1的数),并统计个数的语句如下所示,请把下列语句补充完整。

If____①____Then

a=a+1

Else

____②____

End If

划线处代码为:

①__________________________________________________

②________________________________________________________________

解析 理解变量的含义及把握选择的条件。

答案 ①Int(Rnd()*2)=0或Int(Rnd()+0.5)=0 ②b=b+1

7.在文本框Text1、Text2和Text3分别输入年月日yy、mm和dd,判定输入的20世纪(1900-1999年)日期是否符合实际。

最后在标签Label1中输出该日期是否符合实际,请完善下列程序段。

flag=True

Ifyy<1990Oryy>1999Then

flag=False

ElseIf____①____Then

′月份mm在1-12之间

flag=False

EndIf

′以下程序段判断2月份的天数是否符合要求

Ifmm=2Andflag=TrueThen

IfyyMod400=0Or(yyMod100<>0AndyyMod4=0)Then ′闰年

If____②____Thenflag=False

EndIf

′以下程序段判断非2月份的天数是否符合要求

Ifmm<>2Andflag=TrueThen

Ifmm=1Ormm=3Ormm=5Ormm=7Ormm=8Ormm=10Ormm=12Then

If____③____

Thenflag=False

Else

Ifdd>30Thenflag=False

EndIf

EndIf

If____④____ThenLabel1.Caption=”相符”ElseLabel1.Caption=”不符”

划线处代码为:

①__________________________________________________

②________________________________________________________________

③________________________________________________________________

④________________________________________________________________

解析 要找到月份不正确的条件,最多天数不正确的条件,判断是否相符的条件。

答案 ①mm<1Ormm>12 ②dd>29③dd>31 ④flag=True

8.设计一个程序,根据输入的劳务报酬收入计算劳务报酬所得税。

解决此问题的流程图如图所示。

若要测试所有分支程序代码是否正确,下列测试数据中最恰当的一组是(  )

A.500,830,4200B.500,800,4000

C.0,800,1000D.400,900,1200

答案 A

9.COD(化学需氧量)是衡量水质污染程度的重要指标之一,污水处理时根据污水的COD指标来计算COD去除剂的投放量。

当COD指标x小于50时,剂量为10,指标大于等于50且小于等于500时,剂量为1.2X/5,指标超过500时,剂量为1.5X/4。

在文本框Text1中输入COD指标,单击“计算”按钮Command1后,在文本框Text2中输出计算结果。

程序运行界面如图所示:

为实现上述功能,请在划线处填入合适的代码。

PrivateSubCommand1_Click()

DimxAsSingle,sAsSingle

____①____

 Ifx<50Then

 s=10

 ElseIfx<=500Then

____②____

 Else

____③____

 EndIf

 Text2.Text=Str(s)

EndSub

划线处代码①_____________________________________________________

划线处代码②_____________________________________________________

划线处代码③______________________________________________________

答案 ①x=Val(Text1.Text) ②s=1.2*x/5 ③s=x/4*1.5

10.《浙江省电网销售电价表》中规定,不满1千伏“一户一表”居民用电价格,按以下标准计算:

月用电量在50千瓦时及以下部分,每千瓦时以0.538元计算;51~200千瓦时部分,则每千瓦时按0.568元计算;200千瓦时以上部分,每千瓦时按0.638元计算。

在文本框Text1输入用电量,在文本框Text2中输出相应的电费。

程序运行的界面如图所示:

为实现上述功能,请在划线处填入合适的代码。

PrivateSubCommand1_Click()

DimxAsInteger

____①____

Ifx<0Then

 Text2.Text=”用电量不能是负的!

ElseIfx<=50Then

 Text2.Text=Str(0.538*x)

____②____Then

 Text2.Text=Str(0.568*(x-50)+0.538*50)

Else

 Text2.Text=Str(0.638*(x-200)+0.568*150+0.538*50)

EndIf

EndSub

划线处代码①_____________________________________________________

划线处代码②_____________________________________________________

答案 ①x=Val(Text1.Text) ②ElseIfx<=200

1.能表示“如果a,b同时大于等于0,那么x←2y”的VB语句是_________。

解析 注意两个条件的逻辑连接,注意大于等于符号的表达及2y的表达。

答案 Ifa>=0Andb>=0Thenx=2*y

2.该数是某个数的平方,称为完全平方数。

求数x是否是完全平方数的语句如下,请补充完整。

If____________________Then

Text1.Text=”完全平方数”

Else

Text1.Text=”不是完全平方数”

End If

解析 条件是该数是某个数的平方,那么该数的平方根是整数。

答案 Int(Sqr(x))=Sqr(x)

3.一个四位数等于它每一位数的4次方之和,则称为玫瑰花数。

若某个数n的各个位上的数字分别是a、b、c、d,请完善下列程序段。

If________________Then

Text1.Text=”是玫瑰花数”

Else

Text1.Text=”不是玫瑰花数”

EndIf

解析 理解选择结构的条件。

答案 a^4+b^4+c^4+d^4=n

4.在文本框Text1中输入电子邮箱的名称s,查找“@”符号所在位置,查找到第i个字符ch(ch=Mid(s,i,1)),如果是“@”符号,用变量p记录“@”符号的位置。

请把下列语句补充完整。

If________Then ________

解析 条件是当前字符ch与“@”符号比较,注意加引号,i表示当前位置。

答案 ch=”@” p=i

5.杭州机动车限行规定中,对本地和外地牌照车限行有不同的规定,在文本框Text1输入汽车牌照s,若以“浙A”开头,是否为本地牌照的标志变量flag为True,否则为False。

请把下列语句补充完整。

If________Then ________

解析 条件是开头两个字符是否是”浙A”。

答案 Mid(s,1,2)=”浙A” flag=True

6.星期一那天,杭州本地牌照尾号为1和9的汽车是限行的,在汽车牌照本中取得最后一个数字ch(文本型),判断该车是否限行,请把下列语句补充完整。

If________________Then

p=”限行”

Else

p=”不限行”

End If

解析 两个条件满足一个,注意数据类型。

答案 ch=”1”Orch=”9”或Val(ch)=1OrVal(ch)=9

7.在文本框Text1、Text2、Text3中分别输入一元二次方程系数a、b、c,单击按钮Command1,在Label1中输出方程根的情况。

请把下列语句补充完整。

d=b*b-4*a*c

If____①____Then

 Label1.Caption=”a不能为零,不是一元二次方程”

Else

 If____②____Then

Label1.Caption=”方程没有根”

 Else

X1=(-b+Sqr(d))/(2*a)

X2=(-b-Sqr(d))/(2*a)

 EndIf

EndIf

划线处代码为①___________________________________________________

②_______________________________________________________________

解析 执行语句中已经提示“a不能为零”和“方程没有根”。

答案 ①a=0 ②d<0

8.在文本框Text1中输入一个[200,500]之间的整数x,对这个整数进行一系列操作,若不在这个范围,则列表框List1中输出“输入数据有误”的提示,并清除文本框Text1中数字。

请把下列语句补充完整。

If__________________Then

′以下操作略

Else

List1.AddItem”输入有误!

Text1.Text=””

EndIf

解析 注意条件表达式的写法。

答案 x>=200Andx<=500

9.在文本框Text1中输入一个字符串s,判断当前第i个字符ch属于大写字母(dxzm)、小写字母(xxzm)、阿拉伯数字(sz)和其他字符(qt)其中的一种,并统计个数。

请把下列语句补充完整。

ch=Mid(s,i,1)

Ifch>=”A”Andch<=”Z”Then

dxzm=dxzm+1

____①____Then

xxzm=xxzm+1

____②____Then

sz=sz+1

Else

qt=____③____

EndIf

划线处代码①_____________________________________________________

②________________________________________________________________

③________________________________________________________________

解析 要注意多分支选择的写法,同时要写出小写字母和数字的条件。

答案 ①ElseIf ch>=”a”Andch<=”z”

②ElseIf ch>=”0”Andch<=”9” ③qt+1

10.用计算机模拟一个猜价格游戏,随机产生一个[20,60]之间的整数x,在文本框Text1中输入价格,单击“确定”按钮Command1,若猜中了,提示“猜中了”,所猜价格与x的距离在5元之内,提示“接近了”,高于5元,提示“太高了”,低于5元,提示“太低了”。

程序运行界面如下图所示:

程序代码如下所示,请补充完整。

DimxAsInteger

PrivateSubForm_Load()

x=____①____

EndSub

PrivateSubCommand1_Click()

DimjgAsInteger

jg=Val(Text1.Text)

Ifjg=xThen

Label4.Caption=”猜中了”

____②____Then

Label4.Caption=”接近了”

____③____Then

Label4.Caption=”太高了”

Else

Label4.Caption=”太低了”

EndIf

EndSub

划线处代码为①___________________________________________________

②_______________________________________________________________

③_______________________________________________________________

解析 写出一个在[20,60]之间的整数x的表达式,差价在5元内有两种表示方法。

同时要注意多分支选择结构的书写。

答案 ①Int(Rnd()*41+20) ②ElseIf Abs(jg-x)<=5或jg-x>=-5And jg-x<=5③ElseIf jg-x>5

11.模拟一个简单计算器,输入两个数和一个运算符(加、减、乘、除),进行算术运算,并输出运算结果。

在文本框Text1中输入第一个数,在文本框Text2中输入第二个数,在文本框Text3中输入运算符,在文本框Text4中

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1