1. 首页
  2. 文档大全

算法与程序设计课件3.

上传者:7****0 2022-05-28 00:50:24上传 PPT文件 1.01MB
算法与程序设计课件3._第1页 算法与程序设计课件3._第2页 算法与程序设计课件3._第3页

《算法与程序设计课件3.》由会员分享,可在线阅读,更多相关《算法与程序设计课件3.(99页珍藏版)》请在文档大全上搜索。

1、算法与程序设计算法与程序设计第一章第一章 算法和算法的表示算法和算法的表示算法的概念算法的概念1、算法的概念、算法的概念 所谓所谓“算法算法”,就是解题方法的精确描述。,就是解题方法的精确描述。“算法算法”是用是用来表示解决问题的方法和步骤,它是由有限个步骤组成的。来表示解决问题的方法和步骤,它是由有限个步骤组成的。 从更广义的角度来看,并不是只有从更广义的角度来看,并不是只有“计算计算”的问题才有算法的问题才有算法。乐谱乐谱菜谱菜谱广播操图解广播操图解2.算法实例算法实例 华罗庚在数学普及读物华罗庚在数学普及读物统筹方法平话及补充统筹方法平话及补充中,以中,以“泡茶泡茶”为例,阐明了设计和选

2、择合适的、优化的算法的重要为例,阐明了设计和选择合适的、优化的算法的重要性。性。算法的特性算法的特性 1.有穷性有穷性 例:例:1+2+3+4+n2.确定性确定性 例:例:L/L/正整数正整数3.有有0个或多个输入个或多个输入4.有一个或多个输出有一个或多个输出5.有效性有效性 例例:(:(l+d )/4算法的表示算法的表示自然语言、伪代码、流程图自然语言、伪代码、流程图自然语言:就是指人自然语言:就是指人们日常使用的语言,们日常使用的语言,可以是汉语、英语或可以是汉语、英语或其它语言。其它语言。伪代码:是用介于自伪代码:是用介于自然语言和计算机语言然语言和计算机语言之间的文字和符号之间的文字

3、和符号(包括数学符号)来(包括数学符号)来描述算法。描述算法。例如:输入三个数,然后输出例如:输入三个数,然后输出其中最大的数可用其中最大的数可用如下的伪代码表示如下的伪代码表示Begin(算法开始) 输入 A,B,C IF AB 则 AMax 否则 BMax IF CMax 则 CMaxPrint MaxEnd (算法结束)处理框处理框开始、结束框开始、结束框输入、输出框输入、输出框判断框判断框流程线连接点流程图中的基本符号流程图中的基本符号开始框开始框输入变量输入变量A、B和和CAB?Max BMax ACMax?YNMax CN输出变量输出变量C的值的值结束框结束框Y算法的三种基本模式算

4、法的三种基本模式 (1)顺序结构)顺序结构语句语句1语句语句2条件条件语句语句1语句语句2YN(2)选择结构)选择结构条件条件( a )条件条件语句组语句组(3)循环结构)循环结构a) 当型循环当型循环b) 直到循环直到循环YNYN( b )语句组语句组1、计算圆锥体体积的步骤有: 计算底面积s=pir2 输入底面半径r、高h 输出体积v pi=3.1416 计算体积v=sh/3下列选项中,步骤顺序正确的是(A)(B)(C)(D)A巩固练习巩固练习2、下面结论正确的是( ) A.一个程序的算法步骤是可逆的。B.一个算法可以无止境地运行下去。 C.完成一件事情的算法有且只有一种。D.算法的每一步

5、操作必须是明确的,不能有歧异或模糊。 E.算法执行后一定产生确定的结果。 D E3、下面是解决问题的算法的是( ) A.打开计算机需先插好电源,再打开显示器,打开主机。 B.斜二测画法需将平行于x轴的长度保持不变,平行于y轴的长度变为原来的一半。 C.求方程012=x的解先移项。 D.建国60周年庆典。 Av算法是方法与步骤,而算法是方法与步骤,而B与与D仅陈述事件,而仅陈述事件,而C虽然是步骤,虽然是步骤,但并不能达到目的,也不是解这个方程的算法。但并不能达到目的,也不是解这个方程的算法。4、在求解“一元二次方程实数根”的算法中,如果方程不存在实数解,也要求输出结果“无实数根”。此要求主要体

6、现了算法特征中的 ( )A 有穷性B 有输出C 确定性D唯一性B5、某停车场收费标准如下:1小时及以内,收费 5元;超过1小时的,超过部分每小时按15元 收费。用算法描述这一收费标准,合适的算 法流程是 (A)顺序模式 (B)循环模式 (C)选择模式 (D)树型模式C6、某算法的流程图如下所示:输出输出sx0 x0?N NY Y输入输入x x的的值值ss+xss+x结束结束s0s0开始开始输入输入x x的的值值依次输入x的值为5、3、0后,该算法的输出结果为(A)2(B)3(C)5(D)8D7、某算法的自然语言描述与流程图表示分别如下:自然语言 流程图 第第1 1步:输入一个实数步:输入一个实

7、数x x第第2 2步:判断步:判断x x与与0 0的大小的大小关系,若关系,若x0 x0,则,则y=xy=x2 2- -1 1,否则,否则y=2x-1y=2x-1第第3 3步:输出步:输出y y第第4 4步:结束步:结束N NY Y开始开始x x 0?0?输出输出y y结束结束输入输入x x则流程图中空白处理框和处应填入的是(A) y x2 1 x 2x 1(B) y x2 1 y 2x 1(C) y 2x 1 y x2 1(D) x x2 1 y 2x 1B第二节课第二节课上节知识回顾上节知识回顾开始开始i=10Yi=1 s=0N结束结束输出输出S i=i+1 S=s+11、以上流程图属于(

8、 )结构2、此流程图属于什么结构?请、此流程图属于什么结构?请描述该流程图的含义?描述该流程图的含义?开始开始输入输入a的值的值结束结束输入输入b的值的值 temp a ab b temp 输出输出a,b的值的值提示:提示: 1、 “”表示给于表示给于 2、temp、a、b表示变量表示变量开始开始输入电的度数输入电的度数dushu如果如果 dushu=50N如果如果 dushu=200YDianfei=dushu * 0.53YDianfei=50 * 0.53+(dushu-50)*0.56NDianfei=50 * 0.53+150*0.56+(dushu-200)*0.63输出输出dia

9、nfei的值的值结束结束3、假如你是电费收费员,、假如你是电费收费员,现在需要向某位住户收取现在需要向某位住户收取电费,以下是一个有关电电费,以下是一个有关电费收费问题的流程图,请费收费问题的流程图,请解释一下收费规则?并说解释一下收费规则?并说明此图属于什么结构?明此图属于什么结构?4:以下程序,当输入:以下程序,当输入a,b,c的值分别为的值分别为10,20,30时,输出结果时,输出结果为多少?该流程图完成了什么功能?为多少?该流程图完成了什么功能?. . 某算法的流程图如下所示:某算法的流程图如下所示:开始开始结束结束输出输出c c输出输出b bcbcb?N NY Y输入输入a a、b

10、b的值的值ca+5ca+5当输入当输入a a和和b b的值分别为的值分别为3 3、6 6时,该算法的输出结果为时,该算法的输出结果为(A A)3 3(B B)6 6(C C)8 8(D D)9 9. .某旅游景点规定,身高在某旅游景点规定,身高在1.21.2米以下的儿童免票米以下的儿童免票,身高在身高在1.21.2米米1.51.5米的儿童购买半价票,身高超过米的儿童购买半价票,身高超过1.51.5米的购全价票。下图米的购全价票。下图所示算法用于根据身高判断购票情况:所示算法用于根据身高判断购票情况:开始开始结束结束h1.2?h1.2?N NY Yh1.h1.5?5?Y YN N用于输出用于输出

11、“购全价票购全价票”的的图框编号是图框编号是(A A)(B B)(C C)(D D)D开始开始输入输入n的值的值s=1i=1i=n?结束结束输出输出s的值的值Ns=s*ii=i+1Y练习练习5、当输入、当输入n的值为的值为5时,时,输出输出s的值为多少?该流程图完的值为多少?该流程图完成的什么功能?成的什么功能?练习练习6、将流程图中、将流程图中 改为:改为: 流程图的功能一样吗?如果不一流程图的功能一样吗?如果不一样,当样,当n=5时,结果变成多少?时,结果变成多少?s=s*ii=i+1i=i+1s=s*i1*1*2*3*4*5=1201*2*3*4*5*6=720第二章第二章 算法实例算法

12、实例本章通过求解几个应用问题实例,介绍几种常用的算法设计方法,本章通过求解几个应用问题实例,介绍几种常用的算法设计方法,如:(如:(1 1)用枚举和解析方法设计算法)用枚举和解析方法设计算法 (2 2)在排序和查找中常用的几种简单算法)在排序和查找中常用的几种简单算法 排序排序冒泡排序冒泡排序选择排序选择排序查找查找顺序查找顺序查找对分查找对分查找一、枚举算法一、枚举算法 枚举算法就是把各种可能情况都考虑到,并对全部可能枚举算法就是把各种可能情况都考虑到,并对全部可能结果逐一进行判断,过滤掉那些不符合要求的,保留符合要结果逐一进行判断,过滤掉那些不符合要求的,保留符合要求的结果。求的结果。例例

13、1:一张单据上有一个:一张单据上有一个5位位数,其百位与十位数变得模数,其百位与十位数变得模糊不清(如图),但知道这糊不清(如图),但知道这个个5位数是位数是37或或67的倍数。的倍数。现在要设计一个算法,找出现在要设计一个算法,找出所有满足这些条件的所有满足这些条件的5位数,位数,并统计这些并统计这些5位数的个数位数的个数NO.25 6算法分析:算法分析:(1)在这个)在这个5位的模糊处,依次填入位的模糊处,依次填入00、01、0299这这100个数,从而产生出全部可能解个数,从而产生出全部可能解25006、25016、25026 25996;(2)使用循环结构模式,让变量)使用循环结构模式

14、,让变量j依次取依次取0到到99,那么,那么25006+j*10就是一个可能解(用变量就是一个可能解(用变量n表示);表示);(3)对任一可能解)对任一可能解n,判断是否能被,判断是否能被37或或67整除,若是整除,若是就是一个真正解。就是一个真正解。流程图:流程图:j100j100?N NY Y输出输出: :真正解真正解n n的的值值nn25006+j25006+j* *1010结束结束开始开始计数器设初值:计数器设初值:c 0c 0j 0j 0N N是是3737或或6767的倍数?的倍数?Y Y计数器:计数器:c c+1输出输出c c的值的值N Nj j+1j j+1二、解析算法二、解析算

15、法 解析算法是指用解析的方法找出表示问题的前提条件与解析算法是指用解析的方法找出表示问题的前提条件与所求结果之间关系的数学表达式,并通过表达式的计算来实所求结果之间关系的数学表达式,并通过表达式的计算来实现问题求解。现问题求解。例例2:计算:计算n个电阻并联后的总电阻个电阻并联后的总电阻算法分析:算法分析:(1)R1R22个电阻并联图R1R2Rnn个电阻并联图(2)n个并联电阻的总电阻值个并联电阻的总电阻值R的倒数等于参与并联的各个电的倒数等于参与并联的各个电阻值的倒数之和即:阻值的倒数之和即:RR21R11Rn=11+流程图:流程图:设设R为总电阻为总电阻 r为输入的电阻值为输入的电阻值数据

16、输入数据输入完?完?N NY YR R+1/rR R+1/r结束结束开始开始初始准备:初始准备:R 0R 0Y Y输出输出R R的值的值N N输入一个输入一个r r值值r=0r=0?输出输出:”:”无连无连接接“三、排序三、排序 把杂乱无章的数据变为有充的数据,这一过程即称为排序。是把杂乱无章的数据变为有充的数据,这一过程即称为排序。是计算机程序中经常要用到的基本算法。计算机程序中经常要用到的基本算法。(1)冒泡排序:)冒泡排序: 在一列数据中把较小(较大)的数据逐次向上推移的一种排序技术。在一列数据中把较小(较大)的数据逐次向上推移的一种排序技术。例:将例:将27、36、32、18用冒泡法从

17、小到大排序用冒泡法从小到大排序第一遍:第一遍:27363218273618322718363218273632第二遍:第二遍:18273632182732361827323618273236第二遍:第二遍:1827323618273236例例1、某烹饪比赛中,位专家评委给某厨师的打分分别、某烹饪比赛中,位专家评委给某厨师的打分分别是,。采用冒泡排序是,。采用冒泡排序算法对其进行排序,若完成第一遍时的结果为:,算法对其进行排序,若完成第一遍时的结果为:,则完成第二遍时的结果是,则完成第二遍时的结果是(A),),(B),),(C),),(D),),A例2、某书店在5所学校流动售书量(单位:本)分别

18、是88,110,48,64,35。采用冒泡排序对其进行排序,若完成第一遍时的结果是:35,88,110,48,64,则完成第二遍时的结果是(A)35,88,110,48,64(B)35,48,88,64,110(C)35,48,88,110,64(D)35,48,64,88,110(2)选择排序算法:)选择排序算法: 是对冒泡排序的改进。这种方法是在参加排序数组是对冒泡排序的改进。这种方法是在参加排序数组的所有元素中找出最小(或最大)的元素,使它与第一个元素的所有元素中找出最小(或最大)的元素,使它与第一个元素中的数据相互交换位置,然在余下的元素中找出最小(中的数据相互交换位置,然在余下的元素

19、中找出最小(或最大或最大)的,与第二个元素中的数据交换位置,以此类推,直到所有元的,与第二个元素中的数据交换位置,以此类推,直到所有元素成为一个有序的序列。素成为一个有序的序列。如上例:将如上例:将27、36、32、18用选择排序算法从小到大排序用选择排序算法从小到大排序27363218183632271827323618273236例、用选择排序算法对一组学生的身高数据进行升序排序,已例、用选择排序算法对一组学生的身高数据进行升序排序,已知第一遍排序结束后的数据序列为知第一遍排序结束后的数据序列为165,168,178,175,171,则下列选项中可能性是原始数据序列的是(则下列选项中可能性

20、是原始数据序列的是( )(A)175,178,168,165,171(B)178,168,165,175,171(C)165,178,168,175,171(D)165,168,171,175,178B四、查找四、查找(1)顺序查找)顺序查找(2)对分查找:非常高效,但被查找的)对分查找:非常高效,但被查找的数据必须是有序数据必须是有序例:以下例:以下16个数据中,以对分法查找个数据中,以对分法查找35的过程:的过程:10151718222735454852656772859798123456789101112131415161015171822273545485265677285979812

21、34567891011121314151610151718222735454852656772859798123456789101112131415161015171822273545485265677285979812345678910111213141516(1)(2)(3)(4)标号标号 数字数字标号标号 数字数字标号标号 数字数字标号标号 数字数字例、例、7位学生的身高(单位位学生的身高(单位:cm)从高到低依次为:)从高到低依次为:178,177,175,172,170,165,162。用对分查找法找到用对分查找法找到178所需要的查找次数是所需要的查找次数是(A)1(B)2(C)3

22、(D)4C巩固练习:巩固练习:1、统计个位数是、统计个位数是6,且能被三整除的三位数共有多少个,且能被三整除的三位数共有多少个,可采用的算法是可采用的算法是 ( )(A)查找算法)查找算法 (B)枚举算法)枚举算法(C)解析算法)解析算法 (D)排序算法)排序算法B2 2计算两个并联电阻总电阻值的算法如下:计算两个并联电阻总电阻值的算法如下:输入两电阻输入两电阻R R1 1、R R2 2 的值的值计算总电阻计算总电阻R=R=2121RRRR 输出总电阻输出总电阻R R 上述算法属于上述算法属于(A A)枚举算法枚举算法(B B)解析算法解析算法(C C)排序算法排序算法(D D)查找算法)查找

23、算法3. 7位学生的身高(单位:cm)从高到低依次为:178,177,175,172,170,165,162。用对分查找法找到178所需要的查找次数是(D)4(C)3(B)2(A)14、使用选择排序的方法对数据、使用选择排序的方法对数据8,6,1,9,4从大到小排从大到小排序,需要进行数据互换的次数是序,需要进行数据互换的次数是(A)5 (B)2 (C)3 (D)4D5、在有序单词序列:、在有序单词序列:As、Book、Door、English、Floyd、Good、Hello、Sun中,中,用对分查找法找到单词用对分查找法找到单词“Good”所需要的查找次数是所需要的查找次数是(A)1(B)

24、2(C)3(D)4B6、利用对分查找,在某校报名参加学生会主席竞选的、利用对分查找,在某校报名参加学生会主席竞选的学号列表学号列表20080101,20080135,20080238,20080342,20080450,20080558,20080633,20080708,20080846,20080910中,查找学号为中,查找学号为20080846学生的过程中,依学生的过程中,依次被访问到的学号是(次被访问到的学号是( )(A) 20080450,20080708,20080846 (B) 20080450, 20080708, 20080910, 20080846(C) 20080558,

25、 20080708,20080846(D) 20080558, 20080708, 20080910 ,200808467、某书店第、某书店第30周每天图书的销售量(单位:册)存放在周每天图书的销售量(单位:册)存放在数组数组d中,如下表所示:中,如下表所示:d(1)d(2)d(3)d(4)d(5)d(6)d(7)20112298145267618502若采用冒泡排序算法对这些数据进行升序排列,那么若采用冒泡排序算法对这些数据进行升序排列,那么在完成第一遍的加工时,变量在完成第一遍的加工时,变量d(1) 、d(7)的值分别为的值分别为A 122 502B 201 618C 98 618D 98

26、 5026、小明在一次商品竞猜游戏中,采用了对分查找的算、小明在一次商品竞猜游戏中,采用了对分查找的算法进行猜价。当主办方出示了一件元以内的商法进行猜价。当主办方出示了一件元以内的商品后,小明第次猜价时猜中了商品。该商品的价格可品后,小明第次猜价时猜中了商品。该商品的价格可能性是能性是(A)(B)(C)(D)开始开始结束结束输出输出m mi i 10 and m= “N” ?N NY YKey=20Key=20i1, m“N”数组数组a a赋值赋值a(ia(i)=ke)=key?y?m=“Y”m=“Y”i=i+1i=i+1N NY Y7、某查找算法的流程图如左、某查找算法的流程图如左下列对该流

27、程图的分析,正下列对该流程图的分析,正确的是:确的是:(A)采用顺序查找算法在数)采用顺序查找算法在数组组a中查找中查找20,找到则输出,找到则输出“20”(B)采用对分)采用对分查找算法在查找算法在数组数组a中查找中查找20,找到则,找到则输出输出“Y”(C)若数组)若数组a中存在中存在20,则,则查找次数一定小于查找次数一定小于10(D)若数组)若数组a中不存在中不存在20,则查找次数一定为则查找次数一定为10第三节课第三节课第三章第三章 VBVB程序设计初步程序设计初步一、基本数据类型、常量和变量一、基本数据类型、常量和变量数据数据类型名类型名说明说明描述描述IntegerInteger

28、整数型整数型-32768-32768至至32768范围内的任何范围内的任何整数整数LongLong长整数型长整数型-2147483648至至2147483648范围内的任何整数范围内的任何整数SingleSingle单精度实单精度实数型数型绝对值在绝对值在-1.401298E-45-1.401298E-45至至3.402823E383.402823E38内的任何实数,有效数字约内的任何实数,有效数字约6-76-7位位DoubleDouble双精度实双精度实数型数型绝对值在绝对值在10E-324至至1.79E308内的任何实数,有效数字约内的任何实数,有效数字约14-15位位String字符串型

29、字符串型一段文字与符号一段文字与符号Boolean逻辑型逻辑型判断的结果:其值为真(判断的结果:其值为真(True)或假()或假(False)Date日期型日期型日期和时间日期和时间1、数据类型、数据类型2、常量、常量是指在程序执行过程中其值不能改变的存储单元或数据。是指在程序执行过程中其值不能改变的存储单元或数据。例:下面各种不同类型的常量例:下面各种不同类型的常量整数常量:整数常量: 12 1024实数常量:实数常量: 3.1416 -0.25字符串常量:字符串常量: Basic 0.618 逻辑常量:逻辑常量: True Flase常量在程序设计中用常量在程序设计中用Const语句加以说

30、明。语句加以说明。Const PI=3.141593、变量、变量是指在程序执行过程中其值可以改变的存储单元或数据。是指在程序执行过程中其值可以改变的存储单元或数据。 变量名由字母、数字和下划线等字符组成,但必须以变量名由字母、数字和下划线等字符组成,但必须以字母开头,在变量名中对大小写字母是不加区分的。字母开头,在变量名中对大小写字母是不加区分的。变量在程序设计中用变量在程序设计中用Dim语句加以说明。语句加以说明。其常用格式为:其常用格式为:Dim 变量名变量名 As 变量的类型变量的类型例:例: Dim count As Integer count是整数类型的变量是整数类型的变量 Dim

31、x As Double , y As Double x和和y都是双精度实数类型的变量都是双精度实数类型的变量 Dim Name As String Name是字符串类型的变量是字符串类型的变量4、数组变量、数组变量主要用来存储一批同类型的数据。主要用来存储一批同类型的数据。组成数组的每一个变量被称为数组的元素。组成数组的每一个变量被称为数组的元素。在实际应用中,一维数组用来存储数据的一个线性序列,在实际应用中,一维数组用来存储数据的一个线性序列,二维数组用来存储一个二维数据(即表格)二维数组用来存储一个二维数据(即表格)一维数组常用说明形式:一维数组常用说明形式:Dim 数据变量名(数据变量名

32、(A1 TO A2) As 变量的类型变量的类型注:注:A1 和和 A2是下标的下界与上界,都是常量是下标的下界与上界,都是常量例:例: Dim score( 1 To 50) As Integer 说明说明score是由是由50个整数变量构成的一个一维数组变量,即它有个整数变量构成的一个一维数组变量,即它有50个元素个元素score(1)、)、 score(2)、)、 score(3)、)、 score(49)、)、 score(50)二维数组常用说明形式:二维数组常用说明形式:Dim 数据变量名(数据变量名(A1 TO A2, B1 TO B2 ) As 变量的类型变量的类型注:注:A1

33、和和 A2是第一个下标的下界与上界,是第一个下标的下界与上界, B1 和和 B2是第二个是第二个下标的下界与上界,它们都是常量。下标的下界与上界,它们都是常量。例:例: Dim price( 1 To 50,1 To 8) As Double 说明说明price是个二维数组,可以用来存储是个二维数组,可以用来存储20行,每行中有行,每行中有8个双精个双精度实数数据。度实数数据。 一般地,一般地, price(i,j)是指数组第一)是指数组第一i行第行第j列上的元素。列上的元素。例例1:在:在VB中,用变量中,用变量h1 存储人民币与美元的汇率(如:存储人民币与美元的汇率(如:6.348),则变

34、量),则变量h1的数据类型应说明为(的数据类型应说明为( )(A)Integer (B)Single (C)Date (D)LongB例例2:在:在Visual Basic中,用变量中,用变量code存储学生的借阅卡编码存储学生的借阅卡编码(如如“CH20130036”),则变量,则变量code的数据类型应说明为的数据类型应说明为(A)Integer (B)Single (C)String (D)DateC例例3:在:在VB中,下列能作为变量名的是(中,下列能作为变量名的是( )(A)End (B)b7 (C)2a (D)pass_1D5、VB常用的标准函数常用的标准函数函数名函数名函数功能函

35、数功能Abs(x)求求X的绝对值的绝对值Int(x)求不大于求不大于X的最大整数的最大整数Sqr(x)求求X的算术平方根的算术平方根Rnd(x)返回返回0,1)的随机数)的随机数Exp(x)求求e的的x次方次方Log(x)求以求以e为底的为底的x的对数的对数Sin(x)求求x的正弦值的正弦值Cos(x)求求x的余弦值的余弦值Tan(x)求求x的正切值的正切值举例举例返回值返回值Abs(-3.5)3.5Int(4.1)Int(-4.1)4-5Sqr(4)2Exp(2)7.389056Log(3)1.098612Sin(3.1416/2)0.9999999Cos(3.1416/3)0.499999

36、9Tan(3.1416/3)1.7320606常用数学函数常用数学函数函数名函数名函数功能函数功能Asc(x)字符转换为字符转换为ASCIIChr(x)ASCII转换为字符转换为字符Val(x)数字字串转换为数值数字字串转换为数值Str(x)数值转换成字符串数值转换成字符串Len(x)计算字符串的长度计算字符串的长度Mid(x,n,k)取字符串取字符串x中第中第n个字符起长度个字符起长度为为k的子串的子串Fix(x)截掉数据的小数部分截掉数据的小数部分举例举例 返回值返回值Asc( A)65Chr(48) 0Val( -170)170Str(-170) -170Len( asd)3Mid(“a

37、bcd,3,1) cFix(2.56)2常用类型转换函数和字符串函数常用类型转换函数和字符串函数6、VB中的基本运算和表达式中的基本运算和表达式基本运算基本运算运算符运算符优先级优先级乘幂乘幂1取负取负-2乘法乘法*3实数除法实数除法/3整数除法整数除法4求余数求余数Mod5加法加法+6减法减法-6表达式表达式表达式的值表达式的值250.55-aa的相反值的相反值3*2.57.53/21.53218 Mod 5-7 Mod 33-1a+ba与与b的和的和a-ba和和b的差的差算术运算符算术运算符基本运算基本运算运算符运算符优先级优先级相等相等=7不相等不相等7小于小于7小于等于小于等于=7关系

38、运算符关系运算符表达式表达式表达式的值表达式的值1990 Mod 4=0FalseabcabdTrue5100False10=20False基本运算基本运算运算符运算符优先级优先级与与Not8非非And9或或Or10逻辑运算符逻辑运算符表达式表达式表达式的值表达式的值Not(32)False(25=10) And(25100)Or(25b AND cc 的值是的值是(A)True(B)Flase(C)-1(D)1B(3)在物理学中,两个物体质量分别为)在物理学中,两个物体质量分别为m1和和m2,计算它,计算它们之间的万有引力可以用公式:们之间的万有引力可以用公式:F=G ,若用,若用VB语语句

39、来表示,正确的是句来表示,正确的是(A)F=Gm1m2/r*2(B)F=Gm1m2/r2(C)F=G*m1*m2/r2(D)F=G*m1*m2/r*rc(4)表达式)表达式Abs(-3.6)*Sqr(100)的值是的值是(A)-360(B)360(C)-36(D)36D(5)与数学表达式)与数学表达式“2n-10且且2n-11”对应的对应的VB表达式是表达式是(A) 2n-10 and 2n-11 (B) 2n-10 and 2n-11 (C) 2*n-10 or not 2*n-1=1 (D) 2*n-10 and 2*n-11 D该表达式值为该表达式值为False该表达式值的数据类型是该表

40、达式值的数据类型是Boolean 因为因为b*b-4*a*c结果为结果为8,所以该表达式值不存在,所以该表达式值不存在(6)设)设a=3,b=2,c=1,下列关于下列关于VB表达式表达式b*b-4*a*c=0的的说法正确的有说法正确的有(A) (B) (C) (D) A(7)下棋时要通过掷骰子来随机确定走棋步数。骰子的六)下棋时要通过掷骰子来随机确定走棋步数。骰子的六个面上标有数字个面上标有数字1至至6,下面能表示产生,下面能表示产生1至至6之间的随机整之间的随机整数的表达式是数的表达式是(A) Rnd(1)*6 (B) Rnd(1)*5+1(C) Int(Rnd(1)*6)+1 (D) In

41、t(Rnd(1)*5)+1 C(8)在)在VB中,表达式中,表达式Len(-100)+100的值是的值是(A) 0 (B) 104(C) 200 (D) -100100B7.语句v语句是一种用来描述或规定计算机应该完成语句是一种用来描述或规定计算机应该完成的一串操作的(宏)命令。的一串操作的(宏)命令。v一行上相邻的两个语句之间用一行上相邻的两个语句之间用冒号(:)冒号(:)分分隔。隔。如如: A=VB: A=VB程序设计程序设计 Text1.Text=A Text1.Text=A Dim v As IntegerDim v As IntegerDim book As StringDim bo

42、ok As StringDim sum As SingleDim sum As Singlev=26v=26v=v+1v=v+1book=VBbook=VB程序设计程序设计 sum=vsum=v* *123.4+56.7123.4+56.7 给变量赋值给变量赋值 格式:格式:变量名变量名= =表达式表达式 设置对象的属性设置对象的属性格式:格式:对象名对象名. .属性属性= =表达式表达式例:下列能作为赋值语句的是(例:下列能作为赋值语句的是( )(A)10=i(B)i+j=10(C)t=Flase(D)i=10-j And j=2c例:有如下程序段例:有如下程序段 a=360 b=100 c

43、=a+Str(b) 该程序段运行后,该程序段运行后,c的值为的值为 ( )(A)260(B)360-100(C)460(D)360100B 先对条件测试,根据测试的结果选择执行不同的分支If-Then-Else-End IfIf-Then-Else-End If结构语句结构语句Visual Basic 程序设计程序设计选择语句格式格式: : IfIf 条件条件 Then Then (A(A组语句组语句) ) EndIfEndIf If条件语句条件条件A组语句组语句TF 例:例: If score = 60 Then Print score Print 祝贺你考试通过!祝贺你考试通过! End

44、If Print “继续努力!继续努力!” 执行规则:若执行规则:若, ,执行执行A A组语句组语句; ; 条件不成立条件不成立, ,跳过跳过A A组语句组语句. .条件:可以为逻辑变量、关系表达式条件:可以为逻辑变量、关系表达式或逻辑表达式或逻辑表达式例:输入两个数,分别放在例:输入两个数,分别放在x和和y变量中,比较它们大变量中,比较它们大小,小, 然后将大数放在然后将大数放在x中,小数放在中,小数放在y中。中。x yDim x as integerDim y as integerx=val(Text1.text)y=val(Text2.text)If x = 60 Then Print

45、“祝贺你考试通过!祝贺你考试通过!” Else Print “考试未通过考试未通过.” End If Print 继续努力!继续努力!格式:格式: 条件条件 ThenThen A A组语句组语句 ElseElse B B组语句组语句 执行规则执行规则: :条件条件成立成立, ,执行执行A A组语句组语句, , 条件条件不成立不成立, ,执行执行B B组语句组语句条件条件A组语句组语句TFB组语句组语句例:输入二级考试成绩,要求显示对应三级制的评例:输入二级考试成绩,要求显示对应三级制的评定。评定条件为:定。评定条件为: 优:优:Mark 90等级:通过:等级:通过:60 Mark 90 未通过

46、:未通过:=90?输入成绩开始输出“通过”T输出“优”T成绩=60?F输出“未通过”FMark=Val(Text1.Text)If Mark = 90 Then Print 优ElseIf Mark = 60 Then Print “通过Else Print “未通过End If格式:格式: 条件条件1 1 ThenThen (A A组语句)组语句) ElseIfElseIf 条件条件2 Then2 Then (B B组语句)组语句) ElseIfElseIf 条件条件3 Then3 Then (C C组语句)组语句) ElseElse (n n组语句组语句) 例:有如下例:有如下Visual

47、 Basic程序段:程序段: a = 360 b = Val(a) c = Len(a) If b c Then Label1.Caption = 取数值取数值 Else Label1.Caption = 取字符取字符 End If该程序段运行后,在标签该程序段运行后,在标签Label1上显示的是上显示的是_。循环语句循环循环: :是在指定的条件下多次重复执行一组语句是在指定的条件下多次重复执行一组语句For-NextFor-Next循环结构语句循环结构语句 Do-LoopDo-Loop循环结构语句循环结构语句 Do While Do While 循环体循环体 LoopLoop执行过程执行过程

48、: :(先判断,后执行)(先判断,后执行)先判断循环条件先判断循环条件, ,若为真若为真: :执行循环体执行循环体, ,再判断循环条件再判断循环条件否则,跳过循环体否则,跳过循环体, ,执行执行LoopLoop之后语句之后语句DoLoop循环结构语句 Do While Do While 循环体循环体 LoopLoop例例1:1:求求1+2+3+4+1+2+3+4+10+10的和的和. .Dim I As Integer Dim I As Integer Dim s As Integer Dim s As Integer I=1 : s=0I=1 : s=0Do WhileDo WhileLoo

49、pLoopPrint I,s Print I,s s=s+I s=s+I I=10I=10I=I+1I=I+1I=11:I=11:(1)(1)循环体执行了几次循环体执行了几次? ? (2)(2)没有没有I=1I=1会怎样会怎样? ?(3)(3)将将PrintPrint语句语句移到移到LoopLoop的的 前面结果怎样前面结果怎样? ?(4)I(4)I先赋值为先赋值为11,11,结果如何结果如何? ?For I=10 To 1 Step -1程序代码:程序代码: Dim I As Integer Dim s As Integer s=0 For I = 1 To 10 step 1 Next I

50、 Print I, s例例1:1:求求1+2+3+4+1+2+3+4+10+10之和之和. .分析分析: :重复过程重复过程( (循环体循环体) ): s: ss s+I+I初值、终值和增量初值、终值和增量:1、10、1循环体的执行次数是多少循环体的执行次数是多少 ? ? 输出的输出的I、S的值是多少的值是多少 ? ?s = s + IFor循环结构语句 For For 循环变量循环变量= =初值初值 TO TO 终值终值 Step Step 步长步长 语句块语句块 Next Next 循环变量循环变量循环体循环体注意:注意: 初值初值(e1)(e1)、终值、终值(e2)(e2)、步长、步长(

51、e3)(e3)必须是必须是数值型数值型。若步长为若步长为正正,初值,初值 终值;终值;缺省缺省为默认为为默认为1 1; 在已知循环次数时使用在已知循环次数时使用ForFor循环,循环次数为:循环,循环次数为: 循环次数循环次数=Int=Int(终值终值- -初值初值)/)/步长步长)+1)+1 组成循环体的语句块可以是一条或多条语句;组成循环体的语句块可以是一条或多条语句;S1 =0S2 =0For I = S1 = S1 + INext I 计算计算1 110001000的奇数和与偶数和的奇数和与偶数和 方法一:方法一: 方法二:方法二:For I = S2 = S2 + INext IPr

52、int S1,S2S1 =0S2 =0For I = If I mod 20 then S1 = S1 + I Else S2 = S2 + I End IfNext IPrint S1,S2For循环结构语句例例1:在包含:在包含100个元素的数组个元素的数组a中,寻找最小值的中,寻找最小值的 Visual Basic程序段如下:程序段如下:min = a(1) 变量变量min用于存储最小值用于存储最小值For i = 2 To 100Next INext I则方框中最合适的语句是则方框中最合适的语句是(A A)If a(i) min Then min = a(iIf a(i) min Th

53、en min = a(i) )(B B)If a(i) min Then a(iIf a(i) min Then min = a(iIf a(i) min Then min = a(i) )(D D)If a(i) min Then a(iIf a(i) min Then a(i) = min) = minAs = 0: t = 1: g = 2s = 0: t = 1: g = 2Do While g = 6Do While g = 10 Then Value = 5 * xElse Value = 4 * xEnd IfA、100 B、80 C、90 D、70A3、下列程序段运行后、下列程

54、序段运行后,m的值为的值为( )A=2: b=1: c=5If A b Then m = A Else m = bIf c m Then m = c选项:选项:A、1 B、2 C、5 D、提示错误,无答案、提示错误,无答案A5 、以下、以下Visual Basic程序的功能是:程序的功能是: 计算表达式计算表达式1+2+4+8+16+32+1024的值,并在文本框的值,并在文本框Text1中输出结果。中输出结果。为了实现这一功能,程序中划线处的语句应更正为为了实现这一功能,程序中划线处的语句应更正为_。Private Sub Command1_Click()Dim a As Integer,

55、s As Longs = 0a = 1Do While a = 1024 s = s + a a = a + 2LoopText1.Text=Str(s)End Suba=a a=a * * 2 26、下列、下列Visual Basic程序的功能是:计算表达式程序的功能是:计算表达式12+42+72+972的值,并在文本框的值,并在文本框Text1中输出表达式的值。中输出表达式的值。为了实现这一目标,程序中划线处填空。为了实现这一目标,程序中划线处填空。Private Sub Command1_Click()Dim sum As LongDim i As Integersum = 0For i

56、 =1 To 97 Step _ sum = sum +_Next iText1.Text = Str(sum) End Sub 3 3i2i27 、以下、以下Visual Basic程序的功能是:找出自然数程序的功能是:找出自然数1-100之间之间被被3整除的数,并在文本框整除的数,并在文本框Text1中输出这些数的累加和。为了中输出这些数的累加和。为了实现这一功能,程序中划线处的语句应更正为实现这一功能,程序中划线处的语句应更正为_。Private Sub Command1_Click()Dim i As Integer, sum As Integersum = 0For i = 1 to 100 If i Mod 3=0 Then sum = sum + 3Next iText1.Text=Str(sum)sum = sum+i


文档来源:https://www.renrendoc.com/paper/212473245.html

文档标签:

下载地址