


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二部分算法与程序设计 (选修) 主题 1算法与程序设计1.1算法1.1.1计算机解决问题的过程知识点 1:人是如何解决问题的【知识链接】本考点要求学生达到 “ 了解” 水平。解决问题的过程可以总结为:观察、分析问题, 收集必要的信息,尝试按照一定的方法和步骤解决问题。一般来说, 同一个问题可以有多种解决方法,但不同的方法有优劣之分。评价一种方法的优劣要与具体情况相结合。要理解本考点的内容除了用教科书中“ 韩信点兵 ” 的例子外,还可以举出其他一些例子,例如:最小公倍数问题、班级活动的设计等。【技能扫描】培养将生活中的实例整理成条理化步骤的好习惯,提高自己的逻辑思维和语言叙述能力。体会逻辑关联
2、词 “ 如果那么” 、“ 或者” 、 “ 并且” 、“ 否则” 的含义,能把这些逻辑关联词翻译成数学 “ 语言” 。【典型题析】1. 分析“ 这个人谁都不认识 ” 的含义,体会同一种叙述在不同语境中可以表达不同的意思。分析:第一种解释是在场的所有人都不认识这个人(这个人是被认识的对象 );第二种解释是这个人不认识在场的所有人。2张三有一杯咖啡,李四有一杯牛奶,在不交换杯子的前提下如何交换两人的饮料。分析:设张三的杯子为x,李四的杯子为 y,找一个空杯子 t。将 x 杯中的咖啡倒入 t 杯中,将 y 杯中的牛奶倒入x 杯中,再将 t 杯中的咖啡倒入y 杯中即可。可以写成 xt , yx , ty
3、 。【模拟练习】1把从早晨起床到学校的过程整理成算法(解决问题的方法和步骤 )并表述出来。2一个侦探逮捕了5 个嫌疑犯 b 因为这 5 个人供出的作案地点各有出入,进一步审讯后,他们分别提出了如下的申明。a:5 个人当中有 1 个人说了谎。b:5 个人当中有 2 个人说了谎。c:5 个人当中有 3 个人说了谎。d:5 个人当中有 4 个人说了谎。e:5 个人全说了谎。然而只能释放说真话的人,请问该释放谁呢? 3小明有一盒刘德华的歌曲磁带,小云有一盒梁咏琪的歌曲磁带,在不交换磁带的基础上,怎样将两盒磁带上的歌曲对录到对方的磁带上。参考答案:1略2提示:假如 e 说的是真的,即五个人都说了谎,则a
4、、b、c、d、e 都说了谎,自相矛盾,排除;假如 d 说的是真的,即有四个人说了谎,则a、b、c、它都说了谎,刚好是四个人说了谎,正确;假如 c 说的是真的,即有三个人说了谎,则a、b、d、e 都说了谎,四个人说了谎,故c 为假;假如 b 说的是真的,即有二个人说了谎,则a、c、d、e 都说了谎, b 为假;假如 a 说的是真的,即只有一个人说了谎,则b、c、d、e 都说了谎,矛盾,故也为假。故只能放 d。3提示:典型题析 2 中交换两种饮料和本题中的磁带对录问题,都与计算机算法中将要解决的“ 交换两个变量的值 ” 的问题类似,理解这种解决问题的方法,才能写出解决问题的步骤。知识点 2:计算机
5、解决问题的过程【知识链接】本考点要求学生达到 “ 了解” 水平。计算机程序 (computer program)是指示计算机如何去解决问题或完成任务的一组可执行的指令。程序设 计(program design)是寻求解决问题的方法,并将其实现步骤编写成计算机可以执行的程序的过程。程序设计语言 (program language) 泛指一切用于书写计算机程序的语言。注意:程序设计语言和计算机语言(computer language) 是两个不同的概念, 程序设计语言是一种重要的计算机语言。计算机解决问题和人解决问题有着本质的区别:计算机解决问题要经历分析问题、确定算法、编程求解等基本过程。计算机
6、解决问题的流程如下:开始分析问题 设计算法 编写程序 运行程序 结束编写程序日寸,首先要对问题进行详细的分析,明确已知条件下的初始状态及要达到的目标,找出求解问题的方法和过程,并抽取出一个数学模型, 形成算法; 然后将这个数学模型连同它要处理的数据, 用计算机能识别的方式描述出来,使之成为计算机能处理的对象;最后用程序设计语言设计出具体的问题求解过程,形成计算机程序。ibm 公司的 “ 深蓝” 能够战胜国际象棋大师卡斯帕罗夫,原因是人们将国际顶尖象棋大师在过去 100年问开局和终局的数十亿范例存入计算机数据库,针对卡斯帕罗夫每一步的对弈, 计算机都从数据库中查找能够取胜的应对步骤。所以不是 “
7、 深蓝” 战胜了卡斯帕罗夫, 而是缜密的计算机程序战胜了卡斯帕罗夫。【技能扫描】利用类比的方法体会计算机解决问题和人解决问题的异同,锻炼类比、推理的能力。【典型题析】与人解决问题相比,计算机解决问题的优势有哪些?劣势是什么 ? 分析:计算机具有存储量大、运算速度快、精确度高、可重复执行命令等优点,这些优势是人无法比拟的,但计算机也有自身的劣势,那就是它无法完成随意性强、无逻辑性的随机问题,计算机只是一个高级工具。到目前为止,还没有一台真正具有人类智能的计算机。【模拟练习】1ibm 公司的“ 深蓝” 能够战胜国际象棋大师卡斯帕罗夫是因为()。a计算机具有很高的智商b计算机具有很快的运算速度c计算
8、机事先装载了很多棋局d计算机能根据装载的棋局,经过程序判断作出对弈选择2利用计算机解决问题的过程描述中,以下说法正确的是() a编写程序 调试程序 分析问题 设计算法b分析问题 编写程序 调试程序 设计算法c分析问题 设计算法 编写程序 调试程序d分析问题 设计算法 调试程序 编写程序3名词解释:计算机程序程序设计程序设计语言参考答案: 1. d 2. c 3. 略1.1.2算法的描述方法知识点 1:算法【知识链接】本考点要求学生达到 “ 了解水平。算法在计算机程序设计中占有重要地位,是程序设计的 “ 灵魂” 。世界著名计算机科学家尼克劳斯 沃斯(nwirth) 指出:算法 +数据结构 (da
9、ta structure)=程序。算法具有以下特征。(1)有穷性:一个算法必须保证执行有限步之后结束。(2)确切性:算法的每一个步骤必须有确切的定义。(3)输入:一个算法有0 个或多个输入,以描述运算对象的初始情况,所谓0 个输入是指算法本身确定了初始条件。(4)输出:一个算法至少有一个输出,用以反映对输入数据加工后的结果,没有输出的算法是毫无意义的。(5)可行性:原则上算法能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。已知最早的算法是考古学家发掘出来的大约在35005000 年以前的写在黏土板上的。当时为了做数学用表,巴比伦人需要解代数方程,他们的做法是写出求解的 “ 算法” 。这
10、些算法基本上都是对实际数目的计算。在算法的最后还附有一个短语,这个短语可以粗略地翻译为“ 这是一个过程 ” 。这也是最早出现的程序设计语言的标记。【技能扫描】通过数学例子,运用类比的方法,加强对算法概念的理解,借鉴数学家解决问题的技巧,尝试运用算法解决问题。【典型题析】1. 数学中求 1+2+3+100的和 s。高斯用凑数法: 1+100,2+99,50+51,然后求和。写出高斯求解问题的算法。分析:用凑数法求 1+2+3+ +100 的和时,每一组数的和都相等 (和为 101),而且共有 50 组数。考虑算法的通用性,类似这种求和的算法可描述为:输入最大项数n;列式 s=(1+n)n/2;输
11、出 s的值。【模拟练习】1. 写出求解 1-2+3-4+99-100 的和 s的算法。2. 水仙花数是指一个三位数,它的各位数的立方和正好等于该数本身,如:153=333351,写出求解水仙花数问题的算法。参考答案:1. 提示:循环使用求和公式:s = s + k * i,k 为每一项的符号: k=1)- i*(2(-1)。2. 提示:首先用循环的方法找到所有的三位数,每找到一个数 (用 x 来表示这个数 )就分解当前这个三位数,百位上的数字a=int(x/100),十位上的数字b=int(x-a*100)/10) ,个位上的数字c=x-a*100-b*1,再判断 x=333cba是否成立,若
12、判断结果为真,则x 为水仙花数。知识点 2:如何描述算法【知识链接】本考点要求学生达到 “ 了解” 水平。算法的描述方法有自然语言、流程图、伪代码三种形式。自然语言描述算法的优点是“ 描述” 接近自然语言, 通俗易懂,符合人们的表达习惯, 容易接受。缺点是缺乏直观性和简洁性,在算法表述中容易产生歧义。流程图是算法的图形化表示,其描述算法形象、直观、容易理解。目前常用的流程图是由美国国家标准化协会 (american national standard institute,简称 ansi)制定的一系列流程图符号组成(见教科书中的流程图符号 )的。伪代码 (pseudo code) 是介于自然语言
13、和计算机程序设计语言之间的一种算法描述。伪代码一般用逻辑关键词连接自然语言或表达式的形式来表述算法。因为算法具有多样性,到底用什么算法描述一个问题,要具体问题具体分析。【技能扫描】因势利导, 培养用算法描述问题的能力, 训练正确解决问题的方法, 并把数学课中的问题用算法描述出来,达到学科相融的目的。【典型题析】1将求闰年问题的算法用自然语言、流程图、伪代码三种方法描述。分析:用自然语言描述闰年问题:step1:输入年份 y step2:如果 y 能被 400 整除,则输出 “ 是闰年 ” ,结束程序;否则转到step3 step3:如果 y 能被 4 整除但不能被 100整除,则输出 “ 是闰
14、年 ” ,结束程序;否则转到step4 step4:输出不是 “ 闰年” ,结束程序。用流程图描述闰年问题:用伪代码描述闰年问题:输入年份 y if y 能被 400整除 then 输出“ 是闰年”else if y 能被 4 整除 and y 不能被 100整除 then 输出“ 是闰年 ”else 输出“ 不是闰年 ”end if end if 2下面关于算法的说法错误的是()。a算法必须有输出b算法必须在计算机上用某种语言实现c算法不一定有输入d算法必须在有限步执行后能结束分析:算法就是解决某一特定类型问题的有限运算序列。一个算法必须在执行有限步之后能结束;算法中的每一步必须有确切定义;
15、一个算法有 0 个或多个输入,也必然有一个或多个输出。算法不等同于程序。一个程序,譬如一个操作系统,只要不关机,它就不会结束。算法的设计可以避开具体的计算机和程序设计语言, 也可以借助程序设计语言中提供的数据类型及运算在具体的层次上实现。参考答案: b 开始输入年份y y mod 4=0 y mod 100=0 y mod 400=0 输出不是闰年输出是闰年结束y y y n n n 【模拟练习】1恺撒密码编写的信息如下:krz duh brx? 你能用自然语言描述翻译密码的算法吗? 小知识:公元前60 年(两千多年前 ),古罗马统帅 “ 朱利叶斯 恺撒”(caesar),用当时发明的 “ 恺
16、撒密码 ” 书写军事文书,用于战时通信。后来他成了古罗马帝王,就是“ 恺撒” 大帝。恺撤加密法,就是字母替换加密,即把消息中每一个字母换成其后的第三个字母。例如:原文: abcdefghijklmnopqrstuvwxyz 或者 abcdefghijklmnopqrstuvwxyz 密文: defghijklmnopqrstuvwxyzabc 或者 defghijklmnopqrstuvwxyzabc 2下面说法正确的是 ()。a算法 +数据结构 =程序b算法就是程序c数据结构就是程序d算法包括数据结构参考答案:1 提示:恺撒密码的翻译规律是, 对于字符来说, s = chr(asc(x) -
17、 3)。 翻译结果为 how are you? 2a 1.2程序设计基础1.2.1程序设计语言知识点 1:认识程序设计语言【知识链接】本考点要求学生达到 “ 了解水平。程序设计语言的发展伴随着计算机硬件的发展。程序设计语言经历了机器语言、汇编语言、 高级语言三个阶段。高级语言又分为解释型语言和编译型语言两种。机器语言是计算机能直接识别的语言,机器语言是一串由 “ 0” 和“ 1” 构成的二进制代码。 人记忆和理解机器语言非常困难,而且容易出错。汇编语言是一种符号化的机器语言,它用英文助记符代替机器指令, 比机器语言容易识别和记忆,提高了程序的可读性。它的缺点是依赖机器,不同的机器有不同的指令集
18、,通用性差,使用时还必须翻译成目标程序执行。高级语言是更接近自然语言和数学语言的编程语言。它不依赖机器,通用性好,更容易掌握。高级语言程序的可读性强,便于修改和维护。解释型语言的特征是程序边解释边执行,解释一句执行一句, 速度较慢,其代表语言有 qbasic、lisp。编译型语言是先用编译程序将源程序“ 翻译” 成机器语言的目标程序, 再由连接装配程序进行装配,生成可执行的程序被计算机执行,其代表语言有visual basic、c/c+等。1954 年美国科学家巴科斯 (jbackus)完成了第一个计算机高级语言fortran 语言,创立了描述计算机语言语法的符号集巴科斯范式,摘取了1977
19、年度的 “ 图灵奖 ” 。【技能扫描】学习搜集 (计算机发展的 )信息的方法,增强自我学习的能力,增强自身的知识积累。【典型题析】1简答题:什么是解释型语言?什么是编译型语言 ? 分析:计算机只能直接执行机器语言。高级语言编写的程序必须翻译成机器语言,才能被计算机执行。翻译的方式分为编译型和解释型。参考答案:用编译型语言编写的程序在执行之前需要一个专门的编译程序,把程序编译成为机器语言的目标程序,然后再由连接装配程序进行连接装配,生成可执行程序,才能被计算机执行,比如exe文件。以后运行时不需要翻译,所以编译型语言的程序执行效率高。用解释型语言编写的程序在运行的时候才被翻译,比如basic 语
20、言,专门有一个解释器能够直接执行 basic 程序,每个语句都是在执行时被翻译的。这样解释型语言每执行一次就要翻译一次,效率比较低。【模拟练习】1能够被计算机直接识别的语言是()。a伪代码b高级语言c机器语言d汇编语言2程序设计语言的产生与发展所经历的过程不包括以下哪个选项?() a机器语言b汇编语言c初级语言d高级语言3利用 basic语言编写的程序源代码的文件名后缀为()。a.bas b.cpp c.txt d.doc 4简述计算机语言有哪些,写出这些计算机语言的名称。参考答案: 1c2c3a4略知识点 2:认识可视化编程工具 vb 语言【知识链接】本考点要求学生达到 “ 了解” 水平。实
21、现算法的程序设计语言有多种,visual basic(简称 vb) 是其中一种好学易懂的语言。visual basic 是基于 basic的可视化程序语言。 所谓可视化程序设计, 主要是指程序设计人员利用软件本身提供的各种控件, 像搭积木式地构造应用程序的各种界面,然后编写少量的代码就可以构建应用程序。首先要熟悉 vb 的开发环境,理解vb 语言是一种可视化、面向对象的程序设计语言。启动 vb,打开 vb 工作窗口,如下图所示。窗口的上部是菜单栏和常用工具栏,窗口左边是工具箱, 中间主要区域是窗体, 右边是属性窗口、工程窗口、窗体布局窗口等。所谓面向对象的程序设计,就是面向控件的程序设计。窗体
22、控件主要是为vb 程序提供一个承载其他控件的平台。在界面设计阶段, 可以把程序需要的控件添加并排列在窗体上。按钮控件主要是设计执行某个操作或执行某段程序的“ 切换开关 ”( 设置按钮控件的 “click ”事件)。标签控件主要显示不希望被用户修改的文本。文本框控件是一个文本的编辑区,用户可以在其中输入、编辑、显示文本内容。【技能扫描】学习在窗体中添加工具箱中的文本框、标签、按钮等控件。选中窗体中的某个控件,其相应的属性窗口亦被选中。了解每个控件的主要属性,学习设置控件的常用属性。【典型题析】1双击窗体中的对象后,vb 将显示的窗口是 ()。a项目 (工程)窗口 b工具箱c代码窗口d属性窗口分析
23、:双击窗体中的对象,会显示代码编辑窗口。程序代码作为对象的“ 方法” 书写在代码编辑窗口中,并且还要指定程序代码的驱动事件。参考答案: c 【模拟练习】1vb 有设计、运行和中断三种模式,要使用调试工具应该()。a进入设计模式b进人运行模式c进人中断模式d不用进入任何模式2下列关于添加 “ 控件” 的方法正确的是 ()。a单击控件图标,将鼠标指针指向窗体,双击鼠标b双击工具箱中的控件,即在窗体上出现该控件c单击工具箱中的控件,将指针移到窗体上,再单击d用鼠标左键拖动工具箱中的某控件到窗体的适当位置3下列不属于 vb 控件的是 ()。a文本框b定时器c窗体布局窗d命令按钮参考答案: 1a 2b
24、3c 知识点 3:vb 可视化编程初步【知识链接】本考点要求学生达到 “ 理解” 水平。了解 vb 可视化编程的一般步骤, 了解运用常用控件编写的简单程序,通过简单程序体会控件对象的使用,掌握控件对象的属性、方法、事件等基本概念。可视化编程的一般步骤:设计程序界面 编写程序代码 调试、运行程序面向对象的程序设计就是以对象为中心,以事件为过程执行的起点。vb 提供的可编程事件有单击 (click)、双击 (dblclick) 、加载 (load)、按键 (keypress)等,教科书中最常用的是单击(click) 事件。方法是对象能够执行的操作,这些操作一般是一个动作或一段程序。例如:form1
25、.cls 的作用是清除窗体 form1 中的内容, end 用于结束程序的运行 。每个对象都有自己的名称, 对象有了名称才能被程序引用。 系统为每个对象都规定了默认的名称,例如: command3、label2 等。为了便于程序的阅读和理解,可以自己规定对象的名称,在程序中只要引用自己规定的对象名称就可以了。一般约定,对象名称由3 个小写字母组成的前缀 (指明对象的类型 )和表示该对象作用的字符组成。常用控件名的前缀约定和命名举例如下。对象的类型意义对象的作用前缀名称举例form 窗体其它对象的容器 (其它对象放在 form 上) frm frmfind command 命令按钮控制其它对象的
26、运行cmd cmdok label 标签仅能显示文字信息lbl lblinput textbox 文本框既能显示文字信息,又能编辑文字(输入、修改 ) txt txtsource 下面是几个应该了解的文件。.vbp 文件:与 vb 工程有关的文件和对象清单,是一个文本文件。(工程文件 ) .frm 文件:是包含窗体及控件的属性设置、相关程序代码的文件。(窗体文件 ).bas文件: 是标准模块文件 。.ocx 文件:是 vb 的扩展控件文件 。【技能扫描】熟悉 vb 集成开发环境,理解控件对象的属性、方法、事件等基本概念和作用。掌握常用的窗体、命令按钮、文本框、标签等控件的添加、使用方法。学会设
27、置常用控件的属性。【典型题析】1一只漂亮的酒杯被摔碎了,其中漂亮、酒杯、摔、碎了分别是()。a对象、属性、事件、方法b对象、属性、方法、事件c属性、对象、方法、事件d属性、对象、事件、方法分析:对象的属性定义其外观。方法定义其行为 。事件定义其与用户的交互。“ 酒杯” 是对象,“ 漂亮” 是酒杯的属性,动词 “ 摔” 是事件,摔的结果 “ 碎了” 是方法。参考答案: d 2vb 是一种面向对象的程序设计语言,构成对象的三要素是()。a属性、方法、事件b控件、属性、事件c窗体、控件、过程d窗体、控件、模块分析: vb 向对象的程序设计语言的精髓是许多相关对象的有机组合构成一个程序系统,其中每个对
28、象都有自己的属性(偏重于可视化特点 ),有相应的程序或 “ 命令动作 ” 构成方法 ,有触发这些“ 方法” 的“ 启动” 事件。参考答案: a 【模拟练习】 word excel1如果要改变窗体的标题,需要设置窗体对象的()属性。aname bcaption cbackcolor dborderstyle 2下列文件属于工程文件和窗体文件的是()。as3.doc和 t01.vbp bs3.xls 和 s3.frm ct01.vbp 和 s3.frm ds3.frm和 s3.pdf pdf:便携式文档格式,进行文件交换所发展出的文件格式。3窗体的 backcolor 属性用于设置窗体的 ()。a
29、高度b宽度c背景色d前景色4vb 提供的标签控件具有的功能是() oa输入文本b显示文本c计时d显示时间参考答案: 1b 2c 3c 4b 1.2.2数据与运算知识点 1:数据类型【知识链接】本考点要求学生达到 “ 迁移应用与熟练操作 ” 水平。vb 提供了数值型、字符串型、布尔型、日期型等基本数据类型。数据类型:整型(integer),取值范围 (-3276832767);长整型 (long);单精度型 (single);双精度型 (double);字符串型 (string),取值范围 (065535)个字符、不定长字符串:020 亿个字符 );布尔型 (boolean),取值为 (true
30、 或 false);日期型 (date),格式 (100/1/19999/12/31)。注意:(1)浮点型(单精度型和双精度型的合称)数据的表示方法: 浮点数在计算机中类似于数学中的实数,比如: 304707表示成 3.04707e5。(2)字符串型数据的表示方法(必须用 ”引起来 ):visual basic、245、=33+2等。(3)日期型数据的表示方法: 用一对 “#”号把日期或时间括起来, 例如:#2008/06/28#表示 2008年 6 月 28 日。【技能扫描】掌握常用的数据类型,常用数据类型的取值范围和表示方法。【典型题析】下列哪组数据是 vb 中正确的数据表示形式 ?()
31、a3.457e-6.8 b3457e-10 c 25.74 d#2000/06/28# 分析:对于不同的数据类型有不同的取值范围和表示方法,选项a 中 e 的后面应是整数,选项 b 中 e 前面的数只能保留一位整数,选项c 中的符号错误。参考答案: d 【模拟练习】1整型数据的取值范围是:_ 。2布尔型数据的两个值是:_和_。3写出下列各表达式的值。(1)123 + 45:_。(2)17 + 2.5 :_。(3)#2008/06/28# - #2008/04/28# :_。(4)#2008/06/28# + 4:_。参考答案: 1-32768327672true false3(1)168(2)
32、172.5(3)61(4)2008/7/2 知识点 2:常量与变量【知识链接】本考点要求学生达到 “ 迁移应用与熟练操作 ” 水平。1在 vb 中,用常量 (constant)表示在程序运行过程中事先设置的、其值不能改变的数据。vb中的常量有数值常量、字符串常量等。常量的定义形式如下:const 常量名 as 类型 = 表达式2变量 (variable)是内存中存放数据的存储单元,其中存放的数据称为变量的值。变量名命名的约定如下:(1)必须以字母或汉字开头,不能以数字或其他字符开头。(2)只能由字母、汉字、数字和下画线组成,不能含有小数点、空格等字符。(3)变量名字符数不超过255 个。(4)
33、变量名不能使用 vb 中的保留字 (即 vb 专用的有特殊意义的内容,如print、end 等)。(5)vb 不区分变量名中字母的大小写。(6)变量名最好取有意义的名称,一般在前面加上类型的缩写。常用的前缀有:字符型(str)、整型 (int)、长整型 (lng)、单精度型 (sng)、双精度型 (dbl)、布尔型(bln)、日期型 (dtm)。变量使用前一般要先声明,vb 中变量的声明方法如下。dim as , as , 【技能扫描】掌握常量和变量的定义方法,能根据实际需要正确地定义常量和变量。【典型题析】下列哪些是 vb 中合法的变量名 ?() aalpha b4delta cprint
34、dinteger 分析:变量名的命名必须遵守vb 命名变量名称的约定,可作为vb 变量名的是alpha,其他均不能作为变量名。变量名不能以数字开头,所以4delta 不是合法的变量名, integer、print 属于vb 中的保留字。参考答案: a 【模拟练习】1在 vb 中,下列选项中的两个变量是同一个变量的是()。aa1 和 a1 bsum和 summary caver 和 average da1 和 a-1 2在 vb 中,下列属于合法的变量名的是()。ax_yz b123abc cinteger dx-y 3在 vb 中,下列属于合法的字符串常数的是()。aabc$ babc cab
35、c dabc 参考答案: 1a2a3b 知识点 3:运算符与表达式【知识链接】本考点要求学生达到 “ 迁移应用与熟练操作 ” 水平。1在 vb 中,根据运算功能的不同可将运算符分为算术运算符、字符串运算符、日期运算符、关系运算符和逻辑运算符等。2表达式是由变量、常量、运算符、函数和圆括号等按一定的规则组合而成的。vb 中常用的表达式有算术表达式、字符串表达式、日期表达式、关系表达式和逻辑表达式等。算术运算符要求参与运算的量是数值型,运算的优先级为:指数取负乘除法 整除 求余 加减,运算结果是数值型。字符串运算符有 “+”和“&”,功能是用来连接两个字符串。当使用“+”连接一个数字字符串
36、和一个数值型表达式时其结果是数值型(即两个数值之和 ),用“&” 连接时结果是字符串类型。关系运算符有: =、=和andor。 运算结果是布尔值true(真)或 false(假)。日期运算符有 “+”和“ -” ,输出结果为日期型或数值型数据。当一个表达式中同时出现多种运算符时,运算符的优先级为:算术运算符 字符串连接运算符 关系运算符 逻辑运算符。【技能扫描】能将数学表达式正确地改写成vb 表达式,正确地计算vb 表达式的运算结果。【典型题析】1下列各式中均用单个字母表示一个变量,在vb 中,下列表达式中合法的是()。aa+bc babc 8 cp*r*r d a+b/c(本选项对应
37、的数学关系式为:cba) 分析:本题考查vb 表达式方面的知识。 a 选项中 bc 之间缺少乘号; b 选项中除去 abc 之间缺少乘号外,除号也是错的,应使用“ / ”号;d 选项中缺少括号,正确的表达式应为(a+b)/c。参考答案: c 2数学关系式 3x10 表示成正确的 vb 表达式为 ()。a3=x10 b3=x and x=3 or x10 dx=3 and xx 是()。a算术表达式b非法表达式c字符串表达式d关系表达式参考答案: 1b2a3b4d5d 知识点 4:常用语句【知识链接】本考点要求学生达到 “ 迁移应用与熟练操作 水平。1赋值语句的格式:变量名=表达式或对象名 .属
38、性名 =表达式。赋值语句的作用是把右边的数或表达式的值赋给左边的变量或对象名.属性名。2print 语句的格式为: 对象名 .print 表达式列表 。print 语句是 vb 中的输出语句,其功能是在指定的对象上输出结果,默认对象为当前窗体。print 语句后面无表达式时,表示换行;例:print print 显示项后面没有符号,表示显示完换行;例:print 123; “456”;print 语句显示项用分号分隔,表示后续显示项紧凑显示;例:print 123; “456”;print 语句显示项用逗号分隔,表示后续显示项分区显示,每区为14 个字符位。例: print123, “456”
39、,3注释语句的格式: rem 注释内容、 注释内容。当使用 rem 语句时,必须单独写一行。使用“ ”的注释语句时,可以单独写一行,也可以跟在其他语句的后面。4结束语句的格式: end。结束语句是 vb 中强制结束程序运行的语句。【技能扫描】正确理解赋值语句,掌握print 语句和 end 语句的作用,会正确书写这些语句。【典型题析】1如果 x=5,y=3,执行下列语句:print x=; x, y=; y 则输出结果为 ()。ax=5 y=3 bx=5 y=3 cx=5y=3 dx=5,y=3 分析: print 语句的输出项可以是一个或多个,如果输出多个内容,则各输出内容之间可以用逗号或分
40、号分隔;若使用逗号, 则逗号后的显示项按分区格式输出;若使用分号,则分号后面内容紧跟前面内容输出。例如:当a=5,b=3 时,执行下列语句:print a=; a, b=; b 输出如下结果: a=5 b=3 print a=; a; b=; b 输出如下结果: a=5 b=3 print a=; a; print b=; b 输出如下结果: a=5 b=3 print a=; a print b=; b 输出如下结果:a=5 b=3 参考答案: a 2下列关于赋值语句的叙述错误的是()。aa = b 的作用是将 b 的值赋给变量 a,变量 b 的值不变ba = 123 表示将数值 123 赋
41、给变量 a ca = a + b 表示将变量 a 的值与变量 b 的值相加后,再赋值给变量a dn n + 1 在 vb 中不成立分析:本题要求知道在vb 中,“ =”是赋值符号,它的含义是将 “ =”右边表达式的值赋给左边的变量。它的作用不同于数学中的等号“ =”。参考答案: d 【模拟练习】1下列赋值语句正确的是()。ax y = 7 by = 2r*3.14cy 5 = x + 10 dy = x * 30 2(多选)为了给三个变量赋初值1,下列正确的赋值语句是()。ax=1:y=1:z=1 bx=1,y=1,z=1 cx=y=z=1 dx=1:y=x:z=y 3运行 vb 程序段 a
42、= “ 欢迎您 ” : print “ 北京” , a,屏幕上显示的是 ()。a北京 a b北京欢迎您c北京a d北京欢迎您参考答案: 1d2ad3d 知识点 5:常用函数【知识链接】本考点要求学生达到 “ 迁移应用与熟练操作 ” 水平。1交互函数。(1)inputbox()函数是一个输入函数。格式: inputbox(提示, 标题, 默认值, x 坐标, y 坐标) 例如: inputbox(“ 请输人一个数 ” ) (2)msgbox()函数主要用来显示多种样式的消息对话框。格式: msgbox(提示信息 , 按钮, 标题) 例如: msgbox(“ 运行正确 ” , 16, “ 循环结构
43、 ” ) 2数学函数。数学函数用于数学运算,数学函数主要有以下几种(详见下表 )。函数功能实例结果abs(x) 求 x 的绝对值abs(-3.7) 3.7 sqr(x) 求 x 的平方根sqr(25) 5 sin(x) 求 x 的正弦值sin(30*3.14/180) 0.499770102643102 cos(x) 求 x 的余弦值cos(30*3*14/180) 0.866158094405463 tan(x) 求 x 的正切值tan(60*3.14/180) 1.72992922008979 atn(x) 求 x 的余切值4*atn(1) 3.14159265358979 exp(x)
44、求指数函数xeexp(2) 7.38905609893065 log(x) 求 x 的自然对数值log(10) 2.30258509299405 int(x) 取不大于 x 的最大整数 int(-5.4) -6 rnd 产生0,1)之间的小数rnd 返回一个随机数注意:三角函数中的参数使用弧度数;rnd 函数返回 0, 1)之间的一个随机实数,一般和randomize结合使用, randomize为初始化随机数生成器。3字符串函数。vb 提供了丰富的字符串处理函数,常用的字符串函数有以下几种(详见下表 )。函数功能结果类型实例结果len(x) 求字符串的长度整数len(“ modern” )
45、6 left(x, n) 截取字符串左边 n 个字符字符串型left(“ 20080107” , 4) “ 2008”mid(x, m, n) 从字符串第 m 个字符开始截取 n 个字符字符串型mid( “20080107”, 3, 2) “ 08”right(x, n) 截取字符串右边 n 个字符字符串型right(“ 2008 奥运” ,2) “ 奥运”string(n, x) 生成指定长度的指定字符的字符串字符串型string(3, “88” ) “ 888”注意:所有字符串需要使用“”括起来。4日期函数。date()和 time()函数分别用来返回当前日期与时间,day()、month
46、()、 year()函数分别返回指定日期的日数、月数和年数。5常用转换函数。vb 中常用的转换函数有以下几种(详见下表 )。函数功能结果类型实例结果val(数值型字符串 ) 将数值型字符串转换为数值数值型val(99)+val(88) 187 str(数值) 将数值转换为字符串字符串型str(5) 5 chr(字符代码 ) 求字符的 asc 码对应的字符字符串型chr(97) a asc(字符) 求字符对应的字符asc 代码整数asc(a) 97 cint(表达式 ) 将表达式结果作四舍五入处理整型cint(4.5) 5 【技能扫描】掌握常用函数的用法,返回值的类型等。【典型题析】下列哪个表达
47、式可以产生任意两位整数?() aint(rnd * 90) + 10 bint(rnd * 10) cint(rnd * 100) drnd * 90 + 10 分析: rnd 函数返回 0, 1)之间的一个随机小数,它和randomize结合使用。如要随机产生一个从 n 到 m 之间的整数,表达式是int(rnd*(m n + 1) + n(m,n 为大于 1 的自然数 )。a 选项可产生10, 99的整数; b 选项可产生 0, 9的整数; c 选项可产生 0, 99的整数; d 选项可产生 10, 100)的数。参考答案: a 【模拟练习】1在 vb 中,表达式 5 mod 3+35*2
48、 的值是 ()。a0 b2 c4 d6 2在 vb 中,int(198.555 * 100 + 0.5) / 100 的值是 ()。a198 b199.6 c198.56 d200 3在 vb 环境下,以下运算结果恒为true的表达式是 ()。a(x = 6) b(x = 4) or (x = 4) and not (x = 6) dnot (x 4) 4在 vb 中,三个逻辑运算符not、and、or 运算的优先级从高到低的顺序是()。aandnotor bnotandor cornotand dnotorand 5在 vb 中,rnd 函数不可能的取值是 ()。a0.1 b1 c0.123
49、4 d0.0005 6在 vb 中,产生 30,50)之间的整数的表达式是 ()。aint(rnd * 50) bint(rnd * 20) + 30 cint(rnd * 30) + 20 dint(rnd * 30) 参考答案: 1b2c3b4,b5b6b 1.2.3顺序结构【知识链接】本考点要求学生达到 “ 迁移应用与熟练操作 ” 水平。vb 程序有三种基本结构,即顺序结构、选择结构和循环结构。顺序结构是三种结构中最基本的程序结构, 在顺序结构的程序中, 算法的各个步骤是按语句的先后顺序执行的。在程序的执行过程中没有分支,没有重复。【技能扫描】掌握顺序结构程序的执行过程,会编写和调试顺序
50、结构程序。【典型题析】已知长方体的长、宽、高。编写程序求长方体的表面积和体积。分析:问题分析:设长方体的长、宽、高分别为x、y、z,长方体的六个面两两相等:表面积为:s = 2 * (x * y + y * z + z * x) ;体积为: v = x * y * z 。设计算法:输入 x、y、z的值计算 s = 2 * (x * y + y * z + z * x) 计算 v = x * y * z 输出 s、v 的值。设计界面:将命令按钮添加到窗体中。参考答案:编写程序:private sub command1_click() dim x as single, y as single, z
51、 as single, s as single, v as single x = val(inputbox(x=, 输入长 ) y = val(inputbox(y=, 输入宽 ) z = val(inputbox(z=, 输入高 ) s = 2 * (x * y + y * z + z * x) v = x * y * z print 表面积 s=; s, 体积 v=; v end sub 调试程序:将程序输入到代码窗口,运行程序时依次输入长方体的长、宽、高的值,分析运行结果。【模拟练习】1写出下列程序段的运行结果。x = 17 : y = 5 x = x + y : y = x - y x
52、 = x - y print x 输出: _ 2写出下列程序段的运行结果。pi = 3.14 d = val(inputbox(d=) r = d / 2 s = pi * r * r print s=; s 输入: 4 输出: _ 3从键盘上输人一个三位数,然后将它反向输出。例如输入123,输出结果为 321。a =val(inputbox(请输入一个三位数 ) bw = a 100 sw = (a bw * 100) 10 gw = b = gw * 100 + sw * 10 + bw print 参考答案: 152s=12.563a mod 10b 1.2.4选择结构知识点 1:if
53、语句【知识链接】本考点要求学生达到 “ 迁移应用与熟练操作 ” 水平。1单分支 if 语句的格式:if then 语句块end if 2双分支 if 语句的格式:if then 语句块 1 else 语句块 2 end if 3使用 if 语句的多层嵌套还可以实现程序的多分支结构,但程序结构较烦琐。【技能扫描】掌握 if 语句的两种格式以及执行过程,能根据实际问题设置if 语句中的条件,能正确调试分支结构的程序。了解if 语句的多重嵌套。【典型题析】求函数 y 的值(当 x=0 时,y=2x-5,否则 y=4x)(x 的值在程序中通过调用inputbox 函数,在弹出的标准输入对话框中输入)。
54、private sub command1_click() dim x, y as integer x = val(inputbox( 请输入 x 的值) if x = 0 then y = else y = end if print y=; end sub 分析:这是一道求解分段函数的题, 程序中采用双分支语句, x=0 时, 计算第一个分支 y=2x-5;当 x=0 条件为假时,计算第二个分支y=4x。参考答案: 2 * x 54 * xy 【模拟练习】1关于 if x = 1 then y = 1 语句,下列说法正确的是 ()。ax = 1 和 y = 1 均为赋值语句bx = 1 和 y
55、 = 1 均为关系表达式cx = 1 为关系表达式, y = 1 为赋值语句dx = 1 为赋值语句, y = 1 为关系表达式2完善程序。下面程序的功能是在文本框text1 中输入任意一个数,判断这个数是正数、负数、还是零,并输出判断结果。private sub command1_click() dim a as single dim py as string a=val(text1.text) if a ” 正数” py 知识点 2:select case语句【知识链接】本考点要求学生达到 “ 迁移应用与熟练操作 ” 水平。select case语句的格式:select case表达式ca
56、se表达式列表 1 语句块 1 case表达式列表 2 语句块 2 case表达式列表 n 语句块 n end select “ 表达式列表 ” 通常是一组常量值,每个值确定一个分支。表达式列表可以使用下面的格式:(1)一组用逗号隔开的若干表达式,如:case 1, 2, 3表示 1、2、3 满足指定条件。(2)表达式 1 to 表达式 2,如: case 70 to 80 ,表示 70 到 80这一取值范围满足指定条件。(3)is 关系运算符表达式,如: case is30 ,表示大于 30 满足指定条件。【技能扫描】掌握多分支选择语句,学会使用多分支选择语句解决实际问题。【典型题析】运输部
57、门的货物运费与里程有关,距离越远,每吨货物的单价就越低。假定每吨单价p(元)与距离 s(千米)之间的关系如下:3003002002001001005.15.28.22 .3ssssp编写程序,输入要托运的货物重量和运输的距离,然后计算并输出总运费。分析:问题分析:设总运费为 t,要托运的货物重量为w(吨),则计算公式为: t=p*w*s。要计算总运费,需要知道货物的总重量和运输的距离,根据公式即可得出总运费。设计算法:输入货物重量和托运距离。如果 s100 则按单价每吨 3.2 元计费。如果 100=s200 则按单价每吨 2.8 元计费。如果 200=s=300 则按单价每吨 1.5 元计费
58、。用公式 t=p*w*s计算总运费。输出 w、p 的值。设计界面:在窗体中添加命令按钮。参考答案:编写程序:private sub command1_click() dim w as single, s as single dim p as single, t as single w = val(inputbox( 输入货物重量 (吨) s = val(inputbox(输入托运距离 (千米) if s = 0 then end else select case s case is 100 p = 3.2 case is 200 p = 2.8 case is 23 x = 30 case i
59、s 0 x = 40 end select text2.text = str(x) end sub 运行程序时,如果在文本框text1中输入 10,在文本框 text2 中显示的内容是 ()。a10 b20 c30 d40 参考答案: a 1.2.5程序设计的循环结构知识点 1:for/next 循环语句【知识链接】本考点要求学生达到 “ 迁移应用与熟练操作 ” 水平。for/next 循环语句常用来解决已知循环次数的程序设计问题。格式:for 循环变量= 初值 to 终值 step 步长值 next 循环变量 说明:循环变量也称为循环控制变量,必须为数值型。初值、终值都是数值型或数值表达式。
60、步长值是循环变量的增量,是一个数值表达式。若步长值为正,则初值小于终值;若步长值为负,则初值大于终值。如果步长值是1,step 1可略去不写。步长值为零则会形成死循环。循环体是 for 和 next 之间的语句序列。next 后的循环变量与 for 后的循环变量必须相同。【技能扫描】掌握 for/next 循环语句的格式,学会使用该循环语句编写简单的程序。【典型题析】1完善程序,使得运行程序时,单击命令按钮后在窗体中显示1 到 100 之间的奇数和。private sub command1_click() dim s as integer dim i as integer s = for i = 1 to 1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度劳动协议书合同解除与再就业服务
- 公寓管家退租合同范本
- 公司招标经营合同范本
- 2025年度房产买卖合同争议解决机制范本
- 2025年度学校代课教师教学成果展示与推广合同
- 供货及售后合同范本
- 2025年中国排爆防护装具行业市场发展前景及发展趋势与投资战略研究报告
- 2024-2025年中国证券投资市场运行态势及行业发展前景预测报告
- 普通动产租赁合同范本
- 使用招标文件合同范本
- 人教版小学四年级下册《体育与健康》全册教案
- 法律文书写作(第五版)PPT完整全套教学课件
- 半导体制造技术导论
- 人教版四年级数学下册教材分析精讲课件
- 7S目视化管理标准
- 酒店成本管理系统PICC
- 产品手绘设计表现技法PPT完整全套教学课件
- GA/T 1988-2022移动警务即时通信系统功能及互联互通技术要求
- 文科学术规范与学术论文写作课件
- 人教版小学二年级体育下册全册教案
- 农业政策学PPT完整全套教学课件
评论
0/150
提交评论