《算法与程序设计》知识点.docx

上传人:b****8 文档编号:8938273 上传时间:2023-02-02 格式:DOCX 页数:18 大小:39.32KB
下载 相关 举报
《算法与程序设计》知识点.docx_第1页
第1页 / 共18页
《算法与程序设计》知识点.docx_第2页
第2页 / 共18页
《算法与程序设计》知识点.docx_第3页
第3页 / 共18页
《算法与程序设计》知识点.docx_第4页
第4页 / 共18页
《算法与程序设计》知识点.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

《算法与程序设计》知识点.docx

《《算法与程序设计》知识点.docx》由会员分享,可在线阅读,更多相关《《算法与程序设计》知识点.docx(18页珍藏版)》请在冰豆网上搜索。

《算法与程序设计》知识点.docx

《算法与程序设计》知识点

高中信息技术《算法与程序设计VB(选修)》

知识要点

相关知识点

(一)算法

1.定义

相关题解:

算法:

就是解决问题的方法和步骤。

算法是程序设计的“灵魂”,算法+数据结构=程序。

单选题

1、运用计算机程序解决实际问题时,合理的步骤是()。

A、设计算法→分析问题→编写程序→调试程序

B、分析问题→设计算法→编写程序→调试程序

C、分析问题→编写程序→设计算法→调试程序

D、设计算法→编写程序→分析问题→调试程序

2.算法的描述方法:

算法的描述:

可分多种表达方法,一般用自然语言、流程图和伪代码进行描述。

自然语言描述法:

指用人们日常生活中使用的语言(本国语言),用自然语言描述符合我们的习惯,且容易理解。

流程图描述:

也称程序框图,它是算法的一种图形化表示方法。

且描述算法形象、直观,更易理解。

伪代码描述法:

是介于自然语言和计算机程序语言之间的一种算法描述。

是专业软件开发人员常用方法。

(二)程序设计基础

常用高级编程语言:

BASIC、VB、Pascal、C、C++、Java

面向对象的程序设计语言:

其中的对象主要是系统设计好的对象,包括窗体等、控件等

控件:

是指工具箱中的工具在窗体中画出的、能实现一定功能的部件,如文本框,命令按钮等。

常用控件:

控件

对象的类型

名字举例

窗体

Form

Form1

命令按钮

Commandbutton

Command1

标签

Label

Label1

文本框

TextBox

Text1

对象的属性、方法和事件

1、属性

属性

Name

设置对象的名称

Caption

决定控件中显示的内容(文字)

Text

决定窗体中文本框中显示的内容(初始为空白)

Height

决定控件高度

Width

决定控件宽度

TOP

决定控件的靠顶部位置

Left

决定控件的靠左边位置

Font

设置控件中字体格式

BackColor

设置控件背景色

ForeColor

设置控件的前景色

BorderStyle

设置控件的边框风格

Visible

决定控件是否可见

Enabled

决定控件运行时是否有效

对象名.属性名=属性值

对象中属性可以在设计界面时通过属性窗中设置,也可以在运行时通过程序代码设置,方法如下

例:

给文本框“Txt123”的“Text”属性赋值为字符串“20”,代码如下

Txt123.text=”20”

变量=对象名.属性名

如果要获取对象的状态或特性,这时就要读取对象的属性值,方法如下

例:

读取文本框“txt123”的“Text”属性的代码如下

a=txt123.text‘读取字符(或a=Val(txt123.text)’读取数值)

2、方法

[对象].方法[参数名表]

例:

form.print”欢迎使用”

该语句使用print方法在form1窗体中显示字符串“欢迎使用”

3、事件及事件驱动

事件是对象对外部操作的响应,如在程序执行时,单击命令按钮会产生一个Click事件。

如需要命令按钮响应Click事件,就把完成Click事件功能的代码写到Click事件的事件过程中,与事件一一对应。

事件过程的形式如下:

PrivateSub对象_事件名()

……………(事件过程代码)

EndSub

一个简单的VB程序

求圆的周长和面积

PrivateSubCommand1_Click()

DimrAsSingle'定义r为单精度型

DimcAsSingle'定义c为单精度型

DimsAsSingle'定义s为单精度型

r=Val(Text1.Text)'输入半径r,变量r为数值型,因此输入语句必须加函数Val()

c=2*3.14159*r'计算周长

s=3.14159*r*r'计算面积

Text2.Text=str(c)'输出周长

Text3.Text=str(s)'输出面积,变量s为数值型,因此输出语句必须加函数str()

EndSub

PrivateSubCommand2_Click()

End'退出

EndSub

(三)、常量:

在程序进行过程中不变的量。

在VB中一般分数值常量与字符常量两种

数值常量:

就是数学中说的常数,分整型常量和实型常量两种

整型常量:

即整数,指不带小数点的数值如1、0、-10、+35等都是合法的整数

实型常量:

即实数,指带小数点的数值。

字符串常量:

被一对双引号括起来的若干个合法的字符称为字符串常量。

例如:

”China”、”VisualBasic”、”18”、”3.1415”等,双引号中字符,不包括双引号本身。

 

逻辑常量:

包含true和false两个值。

系统常量:

包括VB已定义的常量(如Vbred)和用户定义常量(如果多次用到同一个常量,则可用一个有意义的名字表示这个常量。

Constpi=3.14159)

(四)、变量:

在程序执行过程中,其值可以改变的量称为变量

变量命名注意要点:

1、必须以字母开头,不能以数字或其他字符开头。

2、只能由字母、数字或下划线组成,不能含有小数点、空格等字符。

3、最长不超过255个字符

4、不能以VB保留字作变量名,如语句定义符dim、函数名str等。

5、VB不区分变量名中字母大小写。

如HELLO和Hello是同一个变量。

数据及运算

(1)常用数据类型:

(整型)Integer、(长整型)Long、(单精度型)Single、(双精度型)Double、(字符串型)String、(布尔型)Boolean、(日期型)Date

其中(整型)Integer、(长整型)Long、(单精度型)Single、(双精度型)Double属于数值型

表示范围:

(整型)Integer(-32768——32767,存储为16位,2个字节)

(字符串型)String字符串型数据是指用“”括起来的一串字符。

如“欢迎进入VB世界!

”、“VisualBasic”、“1234”都是字符串类型。

(2)常量和变量的命名、声明及赋值

符号常量的声明:

Const常量名=常量值

如:

Constpi=3.14159常量名为pi

变量的声明:

Dim<变量名>As<变量类型>

如:

DimaAsInteger定义一个整型变量,变量名为a

变量的赋值

 变量名=表达式 

例题

PrivateSubForm_Click()

DimaAsInteger,bAsInteger,cAsInteger

Dimstr_1AsString

a=54:

b=114:

c=a+b

str_1="HelloWorld"

Printa,b,c

Printstr_1

Endsub

2、VB语言中,下列数据类型说明符中表示字符型的是()。

A、BooleanB、IntegerC、DateD、String

3、在VB语言中,下列合法的变量名是()。

A、34abB、ab34C、*abcD、c\c

4、下列选项中属于字符串常量的是()。

A、abB、a+bC、"1235"D、1235

5、在VB语言中,下列合法的变量名是()。

A、aaB、a*bC、7abD、dim

(五)运算符

算术运算:

+加--减*乘

^幂      例:

2^2=4

/(实数)除   例:

5/2=2.5

\整除     例:

5\2=2

Mod求余数    例:

5Mod2=1

单选题

6、分析下列程序:

PrivateSubForm_Click()

s=11\3+11Mod3

Prints

EndSub

当单击窗体时s的值是().

A、5B、6C、4D、3

关系运算

=   赋值 、    <  小于号

<>  不等于      >  大于号

>=  大于等于号    <=小于等于号

注意:

关系表达式的运算结果为布尔值True或False

例:

3>2结果为True(真或是)

7、下面表达式的值是false的有().

A、"969"<"n97"B、Int(4.99)<>len("basic")C、str(2000)<"1997"D、3>2

逻辑运算

Not(取反)And(与)Or(或)

运算结果为布尔型(Boolean)True或False

逻辑运算符的优先级为:

Not>And>Or

8、下列逻辑表达式的值为“假”的是()。

A、2+4>8B、3+12=15C、5>0And4>3D、10/5<3

9、下列逻辑表达式的值为“假”的是()。

A、3+5>7B、8/4<4C、5>3And3>2D、4+11>20

10、已知A,B,C,D是简单变量,且都已有互不相同的值,执行语句A=C:

D=B后,下列

关系表达式逻辑值为“真”的是()。

A、C=AB、A=BC、D=CD、B=C

11、设a=2,b=3,在VB中,表达式a>bOrb>3值是:

()

A、FalseB、TrueC、-1D、1

字符运算

字符串连接符为“+”和“&”

“123”+“45”=“12345”

“123”&“45”=“12345”

123+“45”语法错误

12、VB的字符串运算符是“&”,该运算符主要用于连接两个或更多的字符串。

如:

"abcd"&

"efg"连接后的运算结果为:

"abcdefg"。

那么,"1+2"&"3"的运算结果为:

()。

A、33B、6C、"1+23"D、True

运算符的执行顺序

在VB中,当一个表达式中同时出现多种运算符时,运算次序由运算符的优先级决定,优先级高的运算符先运算,优先级相同的从左向右进行运算。

不同性质的运算符优先级如下。

算术运算符>字符串运算符> 关系运算符> 逻辑运算符

13、在VB语言中,表示“a大于0且b小于12”的正确表达式是()。

A、b<12ora>0B、b>12Anda<0C、a>12Ora<0D、a>0Andb<12

(六)常用函数

数学函数

Abs(x)求x的绝对值,例:

abs(-3.6)=3.6

Sqr(x)求x的平方根,例:

sqr(100)=10

Int(x)求≤x的最大整数例:

int(3.6)=3int(--3.6)=--4

Rnd()产生[0,1)之间的随机小数(不包括1)

Sin(x)Cos(x)Tan(x)Atn(x)Exp(x)Log(x)

使用三角函数时,参数应是弧度,如数学中sin300应写为:

sin(30*3.14159/180)

字符串函数

Len(字符串)求字符串的长度,例:

Len(“hello”)=5

Mid(字符串,起始位置,截取长度),例:

Mid(“hello”,2,2)=“el”

14、函数mid(C,N1,N2)的作用是从字符串C中N1位开始取出长度为N2的子串。

那么,

Mid("aBcDeFg",3,3)的值为()。

A、aBcB、cdeC、eFgD、cDe

常用转换函数

Val(字符串)将字符串转换为数值,常用于数值的输入语句中。

例:

Val(“123”)=123

Str(数值)将数值转换为字符串,常用于数值的输出语句中

Chr(在ASCII表中取数值对应的字符)例:

chr(65)=”A”

Asc(求字符在ASCII表中的数值)例:

asc(“a”)=97

15、VisualBasic中,下列()函数是求绝对值的。

A、ABS(X)B、SQR(X)C、INT(X)D、STR(X)

16、表达式Abs(-3.6)*sqr(100)的值是()。

A、-36B、360C、36D、-360

17、下列()数据类型不是数值型。

A、DateB、SingleC、DoubleD、Integer

18、下列函数中,返回值是字符串的是().

A、MidB、IntC、ValD、Len

19、代数表达式

表达式后错误的是()

A、g*t*t/2B、1/2*g*t^2C、g*t^2/2D、gt^2/2

20、数学式子

在VB中的正确写法是:

()

A、(2*a+b)/4*a*bB、(2*a+b)/(4ab)C、(2a+b)(4ab)D、(2*a+b)/(4*a*b)

21、判断x是否在区间[a,b]上,在VB中以哪个逻辑表达式是正确的()

A、axandx<=b

(七)程序设计的顺序结构

顺序结构:

代码按照由上到下的顺序一行一行地执行。

程序执行过程中没有分支、没有重复,这种结构称为顺序结构。

例题:

交换两个变量中的数据。

PrivateSubcmdSwap_Click()

DimxAsSingle,yAsSingle

DimmAsSingle

x=Val(txtsx.Text)

y=Val(txtsy.Text)

m=x:

x=y:

y=m'交换数据

txtdx.Text=Str(x)

txtdy.Text=Str(y)

EndSub

牢记以上代码中的数值型数据的输入和输出语句!

22、以下是一段VB程序:

a=1

b=a+1

c=a+b

它的基本结构属于()

A、顺序结构B、选择结构C、循环结构D、树型结构

23、下列VB程序运行后,变量x的值为().

x=2

Printx+l

Printx+2

A、2B、3C、5D、8

(八)程序设计的分支结构

行If语句

行If是指在一行中写完的If语句。

其一般格式为:

格式一:

If条件Then语句

执行这种形式的If语句时,首先对条件进行判断。

若条件成立,则执行Then后面的语句;若条件不成立,则执行If语句后继程序行的语句

格式二:

If条件Then语句1Else语句2

例题:

输入三个不相同的数,求出其中最小数。

PrivateSubForm_Click()

DimaAsSingle,bAsSingle,cAsSingle

DimMinAsSingle

a=InputBox("输入a","输入框")

b=InputBox("输入b","输入框")

c=InputBox("输入c","输入框")

Ifa

Ifc

Print"最小数=";Min

EndSub

执行这种形式的语句时,先进行判断。

若条件成立,则执行语句1;否则执行语句2。

必须写在一行内,不能换行,没有EndIf

块If语句

上述If-then语句只能根据条件的真假是否执行一条语句,当Then部分和Else部分包含的内容较多时,则可选用“块If语句”结构。

格式三:

If条件Then

语句块

EndIf

例题:

当从输入一个数时,当该数大于或等于60时显示"及格",该数小于60时显示"不及格"。

PrivateSubCommand1_Click()

DimaAsSingle

a=Val(Text1.Text)

Ifa>=60Then

Label1.Caption="及格"

EndIf

Ifa<60Then

Label1.Caption="不及格"

EndIf

EndSub{这样的格式是不是太麻烦了,所以请选用格式四,自己改过来吧!

}

格式四:

If条件Then

语句块1

Else

语句块2

EndIf

例题:

编写程序,求函数Y的值(当x≤0时,y=3x+1;当x>0时,y=4x+1)。

PrivateSubForm_Click()

DimxAsSingle

DimyAsSingle

x=Val(InputBox("请输入变量x"))

Ifx<=0Then

y=3*x+1

Else

y=4*x+1

EndIf

Print"y=";y

EndSub

单选题

24、以下是一段VisualBasic程序:

IfI=1Then

X=X+1

Else

X=X*2

EndIf

它的基本结构属于().

A、选择结构B、循环结构C、顺序结构D、树型结构

25、下列程序段运行后,变量Value的值是()

x=20

Ifx>=10Then

Value=5*x

Else

Value=4*x

EndIf

A、100B、80C、90D、70

26、下面是判断变量x是不是能被5整除的偶数的程序,横线上的逻辑表达式应为()

PrivateSubcommandl_Click()

DimxAsInteger

x=Val(Text1.Text)

IfThen

Labell.Caption=”这个数是能被5整除的偶数”

Else

Labell.Caption=”这个数不是能被5整除的偶数”

EndIf

选项:

A、(xMod5)=0And(xMod2)=0

B、(xMod5)=0or(xMod2)=0

C、xMod5=0

D、xMod2=0

27、下列程序段运行后,m的值为()

A=2:

b=1:

c=5

IfA

Ifc

A、1B、2C、5D、提示错误,无答案

(九)程序设计的循环结构

1、For-Next循环

For循环变量一般形式是:

For循环变量=初值To终值[Step循环变量增量]

循环体

Next循环变量

例题1:

求s=1+2+3+4.....+100

PrivateSubCommand1_Click()

DimiAsInteger

DimsumAsInteger

sum=0

Fori=1To100

sum=sum+i'循环体

Nexti

Text1.text=str(sum)

EndSub‘注意这里累加器的应用

例题2:

Step循环变量增量

PrivateSubCommand_Click()

Forj=3To15Step2

Printj‘共输出7个值

Nextj

EndSub‘变量j=357911131517循环7次,j最后的值为17不算在循环中。

循环变量的初值、终值、循环变量增量都是数值型。

其中要重复执行的操作称为循环体,增量可正可负,如果没有设置Step,则增量的缺省值为1

1、循环变量取初值;

2、循环变量与终值比较,没有超过终值转3,否则循环结束,接着执行循环语句的后继语句;

3、执行一次循环体

4、循环变量增加一个增量

5、重复步骤2~4。

以上可以看出,For-Next循环变量是一种当型循环。

说明

(a)For语句与Next语句必须成对出现,而且它们当中的“循环变量”必须是同一个变量,如上例中均为I。

(b)当循环变量为正时,循环变量超过终值,是指循环变量的值大于终值时;若为负,则是指循环变量的值小于终值。

2、Do-Loop循环

For-Next循环的次数是确定的,但是有的问题只知道循环结束的条件,重复执行的次数事先并不知道,这是需要Do-Loop循环

格式一:

 DoWhile条件

       循环体

     Loop

例题:

求最大公约数

PrivateSubCommand1_Click()

Dima,b,rAsInteger

a=Val(Text1.Text)

b=Val(Text2.Text)

r=aModb

DoWhiler<>0

a=b

b=r

r=aModb

Loop

Text3.Text=Str(b)

EndSub

当VB执行DoWhile-Loop循环时,先判断指定的条件是否为真,若条件为真,执行循环体,条件为假时退出循环。

28、下列程序段执行结束后,变量y的值是()。

y=2

Dowhiley<=6

y=y+y

Loop

A、2B、6C、8D、16

29、分析程序,写出执行结果。

PrivateSubcommand1_click()

DimSAsInteger,IAsInteger

S=0

Fori=1to10Step2

S=S+i

Nexti

Print“S=”;s

EndSub

答案:

S=

(十)算法与问题解决

1、解析法

利用所学的数学或物理等知识来求解一个问题。

2、枚举法

对所有可能的情况都逐一列举和判断。

外循环分支的结构。

简单理解一下程序思想及代码(部分程序请补充完整代码)

(1)一只猴子摘了一堆桃子,它每天吃当天桃子数的一半,每次忍不住多吃了一个。

这样到第十天时只有一个桃子可以吃了,编程计算猴子最初共有多少个桃子。

程序:

PrivateSubCommand_Click()

DimiAsInteger

DimsAsInteger

s=1

Fori=1To9

s=(s+1)*2

Next

Print“s=”;s

EndSub

(2)完善按钮“计算7!

”的Click事件程序,当单击命令按钮时Text1显示7!

的值。

PrivateSubCommand1_Click()

DimaAslong

DimiAsInteger

(30)

Fori=1To7

a=a*i

Nexti

(31)

EndSub

这里输入值太大容易“溢出”,可以更改变量a的类型为double

(3)"计算1+2+……+100"

PrivateSubCommand1_Click()

DimaAsInteger

DimIAsInteger

a=0

Fori=1To100

a=a+i

Nexti

Text2.Text=Str(a)

(4)编程计算s=1-2+3-4+5-……+99

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

当前位置:首页 > 总结汇报 > 学习总结

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

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