1、算法与程序设计知识点汇总 第一章 计算机解决问题的基本过程 一、开始 分析问题 设计算法 编写程序 调试、运行程序 问题解决 二、算法-----程序设计的“灵魂” 1、定义:就是解决问题的方法和步骤 2、特征: 1、确定性:每一步都有确切的含义 2、有穷性:执行的步骤和每一步执行的时间都是有限的 3、输入:有零个或多个输入 4、输出:至少产生一个输出 5、可行性:原则上可精确运行 3、算法的
2、描述:1、自然语言 2、流程图(P11) 3、伪代码(p12) 4、计算机语言 三:程序设计语言的发展: 汇编语言 高级语言 机器语言 机器语言:是能直接被计算机识别的语言,是一串由“0”“1”构成的二进制数 汇编语言:符号化语言,比机器语言容易识别和记忆,用汇编语言编制的程序不能被计算机直接执行,必须经过转换处理。 高级语言:更接近于自然语言(英语)和数学语言的编程语言,容易掌握和使用,也不能直接识别,必须经过转换才能被计算机执行。 第二章 一、visiual basic 可视化程序开发工具,主要是让程序设计人员利用软件本身所提供的各种控件,像搭
3、积木一样构造应用程序的各种界面,然后再编写少量的代码就可以构建应用程序,提供了程序设计,编辑,调试,运行于一体的集成开发环境。 二、VB6.0的集成开发环境 三个工作栏: 标题栏 菜单栏 工具栏 六个基本窗口: 主窗口(main) 窗体窗口(form) 工具箱窗口(toolbox) 工程窗口(project) 属性窗口(properties) 窗体布局窗口(formlayout) 三、属性---用来描述对象的外部特征 属性(常用) Name 设置对象的名称 Caption 决定控件中显示的内容(文字) Text 决定窗体中文本框中
4、显示的文字 Font 设置控件中字体格式 Backlcolor 设置控件背景颜色 Forecolor 设置控件前景颜色 四、常用控件 熟悉常用控件(标签、文本框、命令按钮)的作用,图标及其属性 五、数据的表示与处理 1、Vb数据类型 数据类型 存储大小 取值范围 Integer 整型 2 Byte -32768~32767(-215~215-1) Long 长整型 4 Byte (-231~231-1) Single 单精度实型 4 Byte -3.402823E38~-1.401298E-45 1.40129E-45~3.
5、402823E38 Double 双精度实型 8 Byte -1.797693134E308~4.940656458E324 4.940656458E-324~1.797693134E308 String 字符串型 10 Byte+串长度 0~约20亿个字符 Boolean 布尔型 2 Byte True或False Date 日期型 8 Byte 100/1/1~9999/12/31 2、常量与变量的说明: 常量说明:Const a=3.14 const a as single=3.14 变量说明: Dim a As integer Dim
6、 b As integer Dim a,b As integer 3、运算符 (1) 算术运算符 (2)字符串运算符 & 、+ 字符串连接 " 123 " + " 456 " 结果 " 123456 " " 123 " & " 456 " 结果 " 123456 " 区别: + 两边必须是字符串, & 不一定 例如: "abcdef" & 12345
7、 ' 结果为 "abcdef12345 " "abcdef " + 12345 ' 出错 "123" & 456 ' 结果为" 123456 " “123” + 456 ' 结果为 579 注意: "123 " + True '结果为 122 True转换为数值-1,False转换为数值0 (3)关系运算符 a、将两个操作数进行大小比较,结果为逻辑量。如:3>2结果为True。 b、字符串比较,则按字符的A
8、SCII码值从左到右一一比较,直到出现不同的字符为止.。 例: " ABCDE " > " ABRA " 结果为 False 注释:A—Z的ASCII码值为65—90; a—z的ASCII码值为97—122;(选修教材124页) (4) 逻辑运算符 (5) 运算符的执行顺序 算术运算符>字符串运算符>关系运算符>逻辑运算符 4、语句 赋值语句:赋值符号 “=” 作用:对象属性的动态设置。如 对象名.属性 label1.caption=”显示” 对象属性值的返回 y=val(text1.text) X=val(inputb
9、ox(“请输入x”)) X=5 X=x+5 X=x+5 y=x 结果:x=15 y=15 输出语句:print语句 注释语句:Rem或‘ 结束语句:end 5、函数 常用函数: (1)开方: Sqr(25) =5 (2)绝对值:Abs(-3.5) =3.5 (3)取整:Int(x) 取的是小于等于或者不大于x的整数 如: Int (3.14) =3 Int (-3.14) =-4 (4)求字符串长度:Len(“2008奥运”)=6 (5)Left( )函数 功能:取
10、左字符串函数 例:Left(“ABCD”,2)= “AB” (6)Right( )函数 功能:取右字符串函数 例:Right(“ABCD”,2)= “CD” (7)Mid(“字符串”,N,M) 功能:从原字符串的第n个位置开始取m个字符,即取中段字符串函数 例:Mid(“abcdefg”,3,4)= “cdef” (8) String( )函数 功能:生成指定长度和指定字符的字符串 例:String(3,“9” ) = “999” (9) Val( )函数 功能:将字符串转换为数值 例:2+Va
11、l(“12” ) =14 (10) Str( )函数 功能:将数值转换为字符串 例:Str(5) =“5” (11) Chr( )函数 功能:求字符代码(ASCII码(选修教材124页))对应的字符 例:Chr(65) =“A” (12) Asc( )函数 功能:求字符对应的字符代码(ASCII码(选修教材124页)) 例:Asc (“A”) =65 (13) CInt( )函数 功能:将表达式的结果转换为整数,小数部分四舍五入 例:CInt(3.14259*2 ) =6 5、程序的三种基本结构 顺序结构: 选择结构: 语法:(1)
12、 If 条件 Then 语句 End If 语法(2) If 条件 Then 语句1 Else 语句2
13、 End If 循环结构: 语法 For 循环变量=初值 To 终值 [Step 增量] [循环体] Next [循环变量] Do While 条件表达式 语句块 Loop 第三章 1、算法的程序实现 解析法:设未知数,列解析表达式的方法。 穷举法(枚举法):一一列举。 如:水仙花数、玫瑰花数、鸡兔同笼、百鸡百钱(教材49页)、100块砖100人搬等。 递归法:调用自己。 如:小猴摘桃、兔子繁殖(“斐波那契数
14、列”问题)、比萨斜塔向下抛小球(教材70页)、古印度移动盘子(教材70页) 排序法:对给定的一组数据进行升序或降序排序。 冒泡排序:它通过将相邻元素进行比较和交换,逐步将一个无序序列排列为一个有序序列。 查找法:从一组数据中找出某一个数。 顺序查找:顺序查找的基本思想是从第一个数据开始,按数据的顺序逐个将数据与给定的值进行比较,若某个数据和给定值相等,则查找成功,找到所查数据的位置;反之,查找不成功。 二分(折半)查找:对分查找的条件是被查找的数据必须是有序的。 附:例题分析 一、 1.下面关于算法的描述,正确的是 (A) 一个算法只能有一个输入 (B) 算法
15、只能用框图来表示 (C) 一个算法的执行步骤可以是无限的 (D) 一个完整的算法,不管用什么方法来表示,都至少有一个输出结果 参考答案:D 所考知识点:算法的特征 2.算法描述可以有多种表达方法,下面哪些方法不可以描述“闰年问题”的算法 (A) 自然语言 (B) 流程图 (C) 伪代码 (D) 机器语言 参考答案:D 所考知识点:算法的描述 3.算法与程序的关系 (A) 算法是对程序的描述 (B) 算法决定程序,是程序设计的核心 (C) 算法与程序之间无关系 (D) 程序
16、决定算法,是算法设计的核心 参考答案:B 所考知识点:算法的概念 4.人们利用计算机解决问题的基本过程一般有如下四个步骤(①~④),请按各步骤的先后顺序在下列选项中选择正确的答案 ①调试程序 ②分析问题 ③设计算法 ④编写程序 (A) ①②③④ (B) ②③④① (C) ③②④① (D) ②③①④ 参考答案:B 所考知识点:用计算机解决问题的过程 5.在一次电视选秀活动中,有三个评位为每位选手打分。如果三个评委都亮绿灯,则进入下一轮;如果两个评委亮绿灯,则进入待定席;如果红灯数超过二盏则淘汰。最适合用到的程序结构是 (A) 循环
17、 (B) 赋值 (C) 分支 (D) 顺序 参考答案:C 所考知识点:算法的基本模式 6.下列流程图符号属于判断框的是 (A) (B) (C) (D) 参考答案:D 所考知识点:算法的表示、流程图 二、 1.对于对象及其特征的错误理解是()。 (A) 对象都具有一个标识自己以区别其他对象的名字。 (B) 对象都具有自身的属性及其属性值。 (C) 对象一般只用数据表示属性,但不用代码表示行为。 (D) 对象都具有自身的行为(操作)。 参考答案:C 所考知识点:对象的概念。 2.
18、下列控件中可用于接受用户输入文本,又可用于显示文本的是 (A) Label 控件 (B) TextBox 控件 (C) Timer 控件 (D) CommandButton 控件 参考答案:B 所考知识点:VB的界面设计。 3.VB中保存工程文件的文件扩展名为 (A) vbp (B) frm (C) doc (D) pas 参考答案:A 所考知识点:VB应用程序的运行和保存 4.VB语言中,下列各种基本数据类型说明符中表示单精度实型数的是 (A) Integer
19、B) Boolean (C) Single (D) String 参考答案:C 所考知识点:基本数据类型 5.在Visual Basic中,下列属于字符串常量的是 (A) Abs(100) (B) "100" (C) Val("100") (D) 1/2 参考答案:B 所考知识点:数据、标准函数的应用。 解此题需要了解各函数返回值的数据类型,以及数值和字符串的表示方法。题中Abs()函数求的是数值的绝对值,返回的是数值;Val()函数是将数字字符串转换为数值;返回值是数值,1/2本身就是数值;而数字字
20、符串的表示需要加引号。 6.下列可以作为Visual Basic的变量名的是 (A) sqr (B) 2pai (C) cj1 (D) a+b 参考答案:C 所考知识点:变量的命名。 解此题需要了解变量的命名规则。变量名是由字母、数字和下划线等字符的任意字符组成,但必须以字母开头,另外值得一提的是变量名不能使用VB中的保留字。题中sqr属于VB的保留字;5pai不是字母开头;a+b中“+”号是非法字符。 7.函数Sqr(X)功能是 (A) 求X的算术平方根 (B) 求X的绝对值 (C)
21、求不大于X的最大整数 (D) 数值X转换成字串X 参考答案:A 所考知识点:标准函数。 8.下列运算结果中,值最大的是 (A) 3\4 (B) 3/4 (C) 4 mod 3 (D) 3 mod 4 参考答案:D 所考知识点:算术类基本运算符 此题考生需注意“/”、“\”、“mod”三个有关除的运算符的区别 9.3 mod 2 + 3 \ 2的执行结果为 (A) -1 (B) 3 (C) 2 (D) 0 参考答案:C 所考知
22、识点:算术类基本运算 10.a=5,b=7,c=-2,d=1时,下列结果为False的是 (A) a + b > c + d And a >= 5 Or Not c > 0 Or d < 0 (B) c + d > a + b And a >= 5 Or Not c > 0 Or d > 0 (C) a + b > c + d And a < 5 Or Not c > 0 Or d < 0 (D) a + d < b + c And a >= 5 Or Not c < 0 Or d < 0 参考答案:D 所考知识点:逻辑类基本运算 11.下列属于正确的Visual Basic表
23、达式是 (A) a+|b| (B) 3b-2a (C) 2?b (D) b+5 参考答案:D 所考知识点:算术表达式 题中a+|b|和3b-2a均属数学表达式,在VB中表达为a+abs(b)和3*b-2*a,而2?b中“?”不属于基本运算符 12.在Visual Basic中,"20"+"08"的运算结果是 (A) "28" (B) False (C) "20+08" (D) "2008" 参考答案:D 所考知识点:字符串表达式 “+”运算符两边的操作数如果均为数值型,则
24、进行算术运算;如果均为字符串,则它的作用是将两个字符串连接起来。题中两边均为字符串,结果为D。值得一提的是,“+”两头的操作数的数据类型必须是同一类型的,否则会提示错误 13.以下哪项是Visual Basic合法数组元素的表示法 (A) X9 (B) X[9] (C) X(I+9) (D) X{9} 参考答案:C 所考知识点:数组 延伸:在VB的表达式中,一般只出现小括号,其它括号只能出现在字符串当中。 14.下列属于正确的赋值语句是 (A) a+b=5 (B) a=2+3 (C)
25、 2+3=a (D) a+b=2+3 参考答案:B 所考知识点:赋值语句 赋值语句首先要计算赋值号右边的表达式的值,然后将此值赋给赋值号左边的变量或对象属性。题中A、C、D的左边均不是变量也不是对象属性,只有B符合赋值语句的要求 15.下列语句中正确是 (A) txt3.text=txt1.text+txt2.text (B) Command1.name=cmdOK (C) 12label.Caption=1234 (D) A=InputBox(Hello) 参考答案:A 所考知识点:赋值语句、对象属性 在对象属性
26、的赋值语句当中,一切要注意赋值号两边的数据类型是否一致,且书写语句是否规范。题中B、C选项Command1.name与12label.Caption均是字符串类型,故“=”后均需加引号;而D项中InputBox的输入值需是字符串,所以Hello需加引号;A选项要理解两点:一是txt1、txt2、txt3均表示文本框的名称,二是“+”代表的是连接符的功能,题中只是将txt1和txt2中的字符串连接后赋给txt3。 16.下列程序段中,可以实现变量X、Y的值交换的是 (A) y=x: x=y (B) z=x: y=z: x=y (C) z=x: x=y: y=z (D)
27、z=x: w=y: y=z: x=y 参考答案:C 所考知识点:赋值语句的运用 X,Y的值的交换需要一个中间值Z,先将X保存在Z中,如此X的值就可以保存Y的值,再将Z中的值赋值给Y,这时候实现了X与Y的值的交换。 17.有如下程序段: x=5: y=-20 if Not x>0 then x=y-3 Else y=x+3 y的值是__________ (A) 2 (B) -23 (C) 8 (D) -17 参考答案:C 所考知识点:选择语句 18.循环语句For i=1 To 10 step 2 的循
28、环次数是 (A) 5 (B) 9 (C) 8 (D) 10 参考答案:A 所考知识点:循环语句的运用 19.有如下程序段: x=2 For I=1 To 3 If x< I Then x = x + I End If Next I 该程序段运行后,x的值为 (A) 2 (B) 4 (C) 5 (D) 7 参考答案:C 所考知识点:选择语句与循环语句的嵌套运用 20.下列程序段的执行结果为 n=1
29、 s=0 Do while s<20 s=s+n n=n+2 Loop Print n; s (A) 9 16 (B) 11 25 (C) 11 20 (D) 9 24 三、 1.有5位运动员100米成绩依次为13.8,12.5,13.0,13.2,13.4, 原始数据 13.8 12.5 13.0 13.2 13.4 第一趟 12.5 13.8 13.0 13.2 13.4 第二趟 第三趟 12.5 13.0 13.2 13.8 13.4 第
30、四趟 12.5 13.0 13.2 13.4 13.8 若采用选择排序算法对其进行从小到大排序,则第二趟的排序结果是 (A) 12.5 13.8 13.2 13.4 13.0 (B) 12.5 13.4 13.2 13.8 13.0 (C) 12.5 13.0 13.8 13.2 13.4 (D) 12.5 13.2 13.8 13.4 13.0 2.数列1,4,7,10,13,……的递推公式为( )。 (A) f(1)=1;f(n)=n+3 (B) f(1)=1;f(n)=n*
31、2-1 (C) f(1)=1;f(n)=n*2+1 (D) f(1)=1;f(n)=f(n-1)+3 参考答案:D 所考知识点:递归算法 由数列可推出规律,从第二项开始,每一项跟前一项的差为3,故得出递推公式 3.用选择排序法对数据7,6,3,9,2从大到小排序,共需经过多少次数据对调。 (A) 3 (B) 4 (C) 5 (D) 10 参考答案:A 所考知识点:选择排序 此题只能根据选择排序的思路,共需进行四趟比较,具体过程如下: 原始数据 7 6 3 9 2 第一
32、趟 9 6 3 7 2 第二趟 9 7 3 6 2 第三趟 9 7 6 3 2 第四趟 9 7 6 3 2 其中,第四趟不需要进行数据对调,前三趟都进行了对调 4.要从n个数据元素中顺序查找一个元素,最多查找次数是 (A) 1 (B) n (C) n/2 (D) lgn 参考答案:B 所考知识点:顺序查找 此题稍简单,只要稍理解顺序查找的概念,就能选择答案 5.二分查找算法的前提是 (A)被查找数据元素个数是奇数 (B)被查找数据元素个数是偶数 (C)
33、被查找数据元素是有序的 (D)被查找数据元素是无序的 参考答案:C 所考知识点:二分查找的概念 此题稍简单,只要稍理解二分查找的概念,就能选择答案 6.用二分查找法从数列3,6,7,10,12,16,25,30,75中找到数据10的最少查找次数是 (A) 2 (B) 3 (C) 4 (D) 7 参考答案:B 所考知识点:对分查找 用对分查找的方法需分别对上列数据进行编号,共9个数,依次序号为1~9。按照对分查找的思路,依次查找的数据为12、6、10,所以查找次数为3次。 第 8 页 共 8 页






