第一章利用计算机解决问题的基本过程
1.利用计算机解决问题的基本过程(P3)
①分析问题②设计算法③编写程序④调试程序
2.算法的基本特征(P9)
①输入(0个或多个)
②确定性(算法的每一步都必须要确切地定义)
③有穷性(一个算法在执行有穷步之后必须结束)
④输出(算法有一个或多个输出)
⑤能行性(算法中有待执行的运算和操作必须是相当基本的)
3.算法描述(P10)
表示描述算法的语言主要有:自然语言、流程图、伪代码等。
自然语言描述算法的优缺点:
优点:通俗易懂
缺点:具有歧义性、自然语言语句较长、难以清晰地表示循环与分支较多的算法、不便翻译成计算机程序设计语言
流程图:
开始/结束框输入/输出框处理框判断框流程线连接点4.计算机程序的基本概念及执行的基本过程(P14)
计算机程序是一组机器操作的指令或语句的序列,是算法的一种描述
程序执行的基本过程:除非特殊声明,程序都从第一条语句开始顺序执行;有时语句要求执行者做出判定,即在某种条件成立的情况下执行一条或一组语句,否则执行另一条或另一组语句;一条或一组语句可能需要重复执行多次(循环体)。
程序的三种基本结构:顺序结构、选择结构、循环结构
5.程序设计语言产生与发展过程(P18)
程序设计语言的发展历程:
①机器语言(0、1代码)②汇编语言(带有助记符)③高级语言
常见的高级语言:Fortran、Basic、C、C++、Pascal、JAVA
6.程序的编译与解释的过程(P20)
程序的翻译:计算机程序转为机器语言程序(计算机只能识别和执行机器语言代码)
程序的翻译有两种类型:
编译程序(高级语言程序执行前翻译成等效的机器语言程序,然后再执行)
解释程序(翻译一句,执行一句)
第二章程序设计语言初步
1.程序设计语言的基本概念
程序设计语言是指人们编制程序时所使用的计算机语言
2.整型、字符型、实型和逻辑型等基本数据类型(P27)
数据:描述客观事物的数、字符以及所有能输入到计算机中,并被计算机程序加工处理的符号的集合。
VB预先定义了多种数据类型,常见的有:
整型数Integer 单精度实型Single 整型实型
长整型Long 双精度实型Double 字符型String 逻辑性Boolean
(3)变量、常量的含义。
(P27)
常量是在程序运行过程中始终保持不变的常数、字符串等。
变量是在程序运行过程中可以改变的量。
定义常量、变量时应说明数据类型
常量定义方式:const 常量名 as 数据类型 = 表达式
变量定义方式:dim 变量名 as 数据类型
(4)程序中常用的运算符。
(P28)
算术运算符有: +加号 -减号 *乘号 /除号 ^乘方 \整除 Mod取余数字符串运算符: &字符串连接符
关系运算符: =等于 >大于 >=大于等于 <小于 <=等于 <>不等于
逻辑运算符: Not逻辑非(取与操作数相反的值)
And逻辑与(当两个操作数都为真时,结果才为真)
Or逻辑或(当两个操作数都为假时,结果才为假)
注:各种运算符有运算先后顺序算术运算符 > 关系运算符 > 逻辑运算符(5)常用的几种函数:取整函数、正弦函数、算术平方根函数、绝对值函数、测量字符
串长度函数。
(P29)
取整函数Int(X) 不大于给定数X的最大整数Int(3.6)=3 Int(-3.6)=-4 正弦函数Sin(X) X弧度的正弦值Sin(0)=0
算术平方根函数Sqr(X) X的算术平方根Sqr(16)=4
绝对值函数Abs(X) X的绝对值Abs(-2)=2
测量字符串长度函数Len(C) 测量字符串的长度Len("VB程序设计")=6 (6)将数学表达式转换成程序接受的表达式。
将数学表达式转化成程序中的表达式,要学会使用常用函数,要注意运算符的运用,例如乘号一定要写成*;还要注意在适当的地方加上括号;
例:
1<X<2 X>1 And X<2
求根公式 (-b+sqr(b^2-4*a*c))/(2*a)
|a-b| abs( a-b)
(7)赋值语句。
(P35)
赋值语句的基本格式:
变量 = 表达式
赋值语句的作用是将表达式的值赋给左边的变量,变量之前的值将被覆盖
..........。
例: A=B 表示将B的值赋给A,但是B的值并没有改变
A=123 表示将数值123赋给变量A
A=A+1 表示将A的值加1之后再赋给A,即A的值自增1(计数器)。
(8)输入输出语句(P36)
①可以通过输入数据的函数Inputbox()实现数据的输入,其语法格式为:
Inputbox(提示信息,标题,默认值,位置)
注意使用Inputbox()时,必须将其值赋给一个变量;并且该函数返回值是字符串类型,如果要将其转换为对应数值型数据进行计算,必须使用Val()函数
②输出数据采用Print方法,其基本格式为: Print 输出内容
注意:如果输出的内容是数、变量、表达式,则输出的是数、变量、表达式的值,如果是用引号引起来的字符串,则原样输出;
输出内容可以是一个或多个,如果是多个输出内容,则各输出内容之间可以用逗号或分号分隔,如果用分号,则后面一个输出紧跟前一个输出,如果用逗号,则按照分区格式输出(分隔一段)。
如果输出内容后没有符号,表示输出后自动换行,末尾有","或";",则不换行,以分区或紧凑格式输出下面的内容,空Print 表示换行。
(9)条件语句(P42) 条件语句分为单分支、双分支、多分支(多分支不做要求)
单分支书写格式: If 条件 Then 语句组
或 If 条件 Then
语句组
End If
双分支书写格式: If 条件 Then 语句组1 Else 语句组2
或 If 条件 Then
语句组1
Else
语句组2
End If
条件语句的执行过程:
单分支:当条件成立时,执行语句组,否则直接执行If 之后的语句
多分支:当条件成立时,执行语句组1,否则执行语句组2
(10)循环语句的基本用法(P51)
程序的循环结构指的是需要重复某些操作的程序结构
在VB 里有两种语句描述循环结构: For 循环语句、Do 循环语句
For 循环语句:
书写格式: For 循环变量 = 初值 To 终值 Step 步长
语句组
Next 循环变量
说明:①循环变量为数值型变量
②初值、终值、步长值均为表达式
③当初值小于终值时,步长应为正数,当初值大于终值时,步长应为负数,如果 省略Step,则步长值为1
④语句组可以是一个或者多个语句,又称作循环体
⑤循环体执行的次数为:(终值-初值)/ 步长 + 1 的整数部分
执行过程: ①循环变量被赋予初值
说明:当语句组与Then 在同一行时,不需要加End If ,但是如果不在同一行,一定要加End If
②判断循环变量是否超过终值,如果超过,则退出循环执行Next下一
条语句,如果没有则执行循环体
③遇到Next语句,循环变量增加一个步长,转到②继续循环
Do循环语句:
书写格式(之一): Do
循环体
Loop Until 循环终止条件
说明:①循环体是一组VB语句
②循环终止条件是一个逻辑表达式
执行过程:每次进入循环都是从Do命令开始,先执行一次循环体
........,然后判断是否满足循环终止条件,若满足条件则退出循环,否则继续循环。
(11)模块化程序设计的基本思想与方法
对一些大型的、复杂的问题进行求解,常常会把它们分解为更小、更简单和更容易处理的子问题(模块化),当这些子问题被求解以后,原来的问题就可以随着这些子问题的解决迎刃而解,这就是“自顶向下、逐步求精”的程序设计思想,即模块化程序设计思想。
第三算法与问题解决例举
(1)解析法的基本过程(P96)
通过分析问题中各要素之间的关系,用最简练的语言或形式化的符号来表达它们的关系,得出解决问题所需的表达式,然后设计程序求解问题的方法称为解析法。
解析法的基本过程:
分析问题设计算法编写程序调试程序
(2)能够根据具体问题的要求,使用穷举法设计算法,编写程序求解问题
穷举法:根据具体问题的要求,逐一列举出所有可能的情况,然后一一判断是否满足题目要求,找出题目的答案。
(3)数组的概念,掌握使用一维数组存储批量数据的基本方法
数组:把有限个类型相同的变量用同一个名字命名,然后用编号区分它们的变量的集合。
定义数组的方式: dim 数组名(下界 to 上界) as 数据类型
数组的引用方式:数组名(下标值)
说明: 1.数组名的命名规则要遵循变量名的命名规则
2.下界可以省略不写,默认为0
3.数组在定义或使用时只能使用圆括号,不能使用其他括号
4.下标可以是常量、变量或表达式,但其值必须是整型
数组在存储和输出时,往往采用循环语句进行成批数据的输入与输出。
(4)使用顺序查找算法设计程序解决问题
当查找的对象排列没有规律时可用顺序查找算法。
顺序查找就是一个一个地按照对象的元素往下找,直到全部元素都查了一遍。
例如:在一批数据中查找最大数或最小数。
(5)使用选择排序算法设计程序解决问题
第I(I=1,2,3……N)次从数组A中选择第I大的数放入A ( I )中,经过N-1次选择,数组A中的数据就是一个有序数列。