admin 管理员组

文章数量: 1086019


2024年12月31日发(作者:ubuntu 主题颜色)

1.1 计算机解决问题的过程

一、 单项选择题

1.利用计算机解决问题的过程中,“找出已知和未知,明确它们之间的关系,列出数学表达式”

属于以下哪一个步骤( )。

A.设计算法

B.分析问题

C.编写程序

D.调试运行程序

答案

2.要进行元旦晚会比赛,学校请你设计一个能够对元旦晚会节目分数自动排序的软件,你接到

任务后,准备开始设计此软件,比较好的方法和步骤是?( )。

A.设计算法,编写程序,提出问题,调试程序

B.分析问题,编写程序,设计算法,调试程序

C.分析问题,设计算法,编写程序,调试程序

D.设计算法,提出问题,编写程序,调试程序

答案

3.程序编好以后,计算机无法检查出来的错误是?( )。

A. 编译错误

B. 执行错误

C. 逻辑错误

D. 语法错误

答案

1.2 算法和算法的描述

一、 单项选择题

1.以下不是算法特征的是

( )。

A.有穷性

B.确定性和可行性

C.输入和输出

D.高效

答案

2.在流程图的基本图形中,菱形表示( )。

A.开始/结束

B.输入/输出

C.处理

D.判断

3.以下说法正确的是( )。

A. 算法就是程序

B. 数据结构就是程序

C. 算法+数据结构=程序

D. 算法就是解决问题的方法

答案

答案

二、简答题

4.分别用算法的三种描述方式描述下列:某图书城书籍促销,一次购买100元以上书籍8折,100

元以下9折。

提示

5.阅读程序框图,若输入m=4,n=3, 则输出a= ,

i= 。

提示

1.3 程序与程序设计语言

单项选择题

1. 在下面给出的各项中,属于机器语言的是( )。

A. x=10+1

B. 011011 000000 000000 000001 110101

C. CLA 00 017

D. X=X+1

答案

2.程序设计语言的发展经历了从( )→汇编语言→高级语言的过程。

A. 自然语言

B. 机器语言

C. C语言

D. 低级语言

答案

3.编译方式是先( ),再执行。

A. 翻译整个程序

B. 逐句翻译

C. 翻译一条执行一条

D. 直接执行

答案

4.不属于程序三种基本结构的是( )。

A. 顺序结构

B. 选择结构

C. 循环结构

D. 数据结构

答案

5.“下雨在体育馆上体育课,不下雨则在操场上体育课”,用算法描述这一问题,合适的算法

结构是 ( )。

A. 顺序结构

B. 选择结构

C. 循环结构

D. 数据结构

答案

2.1 VB语言及程序开发环境

一、 单项选择题

1.以下哪个是合法的变量名( )。

A. Len

B. Test@qw

C. 6cost_1

D. count2s

2.双击窗体中的对象后,Visual Basic将显示的窗口是( )。

A. 工程窗口

B. 工具箱

C. 代码窗口

D. 属性窗口

提供控件的窗口是( )。

A. 工具栏

B. 布局窗口

C. 工具箱

D. 属性窗口

答案

答案

答案

4.在VB集成开发环境中,单击工具栏中的

A. 设计模式

B. 运行模式

C. 中断模式

D. 设计代码模式

(启动)按钮 可以进入( )。

答案

5.在VB集成开发环境中,若不小心关闭了工程窗口,可依次点击菜单栏的( )重新打开。

A. “编辑”—>“工程资源管理器”

B. “视图”—>“工程资源管理器”

C. “工程”—>“工程资源管理器”

D. “格式”—>“工程资源管理器”

答案

二、填空题

6.“根据圆的面积求其周长”程序的界面和代码如下图所示(s代表圆的面积、r代表圆的半径、

c代表圆的周长):

回答如下问题:

(1)根据VB程序的基本组成,程序代码缺少部分;该部分的代码应为。

(2)请定义一个符号常量pi 代表圆周率3.141592653:

(3)请根据算法提示补充完整计算圆的半径和周长的代码(圆周率用第(2)小题的pi表示):

r= 。

c= 。

答案

7.“变量演示程序”的程序界面及代码如下图所示:

将“a=100”按下表中“代码”列的要求依次修改,应该如何修改变量类型说明语句才能使程序

正常运行并得到预计结果?

1

2

3

4

5

6

代码

a=100

a=50000

a=100.89

a=#2010-4-22#

a="china中国"

a=true

预计结果

102

50002

102.89

2010-4-24

如何修改类型说明语句?

Dim a as integer

(1) 第5行a="china中国"正确定义后程序仍不能正常运行的原因是:。

(2)从第6行的代码运行结果观察,true在计算机中用表示,false用表示。

答案

8.请计算表达式1+3*4 mod 15/3-2^3+149/3的值。

提示

9.请将数学公式

翻译成对应的VB表达式。

提示

2.2 程序的顺序结构

一、 单项选择题

1.执行以下程序,在弹出的第1个输入框输入“10”,第2个输入框输入“15”,则输出的结果

为( )。

Dim a As Integer, b As Integer

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

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

Print a; "+";b; "=",a+b

A. a+b=25

B. 10+15=25

C. a+b=25

D. 10+15=25

答案

2.已知A,B,C,D是整型变量,且都已有互不相同的值,执行语句“B=8:A=C:D=A;D=B”后,

其值相等的变量是( )。

A. A,D

B. A,C

C. C,B

D. B,A

答案

3.要交换变量A和B之值,应使用的语句组是( )。

A. A=B:B=C:C=A

B. C=A:A=B:B=C

C. A=B:B=A

D. C=A:B=A:B=C

答案

二、 填空题

4.有如下Visual Basic程序段:

m = "VB"

n = "is"

t = "easy"

t = m + n + t

该程序段运行后,变量t的值为。

答案

2.3 程序的选择结构

一、 单项选择题

1.判断x是否在区间(a, b]上,在VB中以下哪个逻辑表达式是正确的?(

A.a

B.a

C.a

D.a>x And x<=b

2.设a=2,b=3,在VB中,表达式a>b or b>=3的值是( )。

C.-1

D.1

3.执行以下程序段后,整型变量c的值为( )。

a=24

b=328

select case b10

case 0

c=a*10+b

case 1 to 9

)。

答案

答案

c=a*100+b

case 10 to 99

c=a*1000+b

end select

A.537

B.2427

C.24328

D.240328

答案

二、 多选题

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

Dim x as Integer

X=Val()

If____________then

n="这个数是能被5整除的偶数"

Else

n="这个数不是能被5整除的偶数"

End if

A.(x mod 5)=0 and (x mod 2)=0

B.x mod 10=0

C.x mod 5=0

D.x mod 2=0

答案

三、 填空题

5.某市出租车计费标准规定:出租车启动后行程不超过3千米(包含3千米)计费5元;如果

行程超过3千米且不超过10千米(包含10千米),则超过3千米部分按1.5元/千米计费(3

千米及以内部分计费仍为5元);若行程超过10千米,则在前面计费基础上,超出10千米部

分按1.8元/千米计费。

假定某出租车行程为x千米,计费标准如下:

当x≤3千米时,计费为5元;

当3

当x>10千米时,计费为5+(10-3)×1.5+(x-10)×1.8

解决此问题的算法流程图如图所示,相应的Visual Basic程序如下,在程序①和②画线处,

填入适当的语句或表达式,把程序补充完整。

Private Sub Command1_Click()

Dim x As Single, s As Single

x = InputBox("输入","请输入行程")

If _____①_____ Then

s = 5

Else

If x <= 10 Then

s = 5 + (x - 3) * 1.5

Else

________②_________________

End If

End if

Print s

End Sub

程序中①画线处应填入

程序中②画线处应填入

答案

四、 编程题

6.在“神州号”程序中,我们只判断了飞船成功飞行的条件。当飞船速度继续加大时,飞船将

达到第二宇宙、第三宇宙速度……(见下表)。

试编写程序,输入不同的飞船速度,判断它的各种飞行状况。

飞船速度( V) 单位(km/s)

飞行状况

7.91<=V<11.19

11.19<=V<16.67

V>=16.67

飞船绕地球似做匀速圆周运动

飞船离开地球的控制 ,围绕太阳转

飞船挣脱太阳引力飞出太阳系

答案

2.4 程序的循环结构

一、 判断并改错

1.阅读以下程序段,请判断是否有误并修正。

For j = 50 To 1 Step 2 ' 程序运行结果:实现50到1的所有偶数的输出

Print j

Next a

2.阅读以下程序段,请判断是否有误并修正。

答案

i = 1 ' 程序运行结果:实现1到5的输出

Do While i <= 5

Print i

Loop

3.阅读以下程序段,请判断是否有误并修正。

for i=1 to 5 step 1

for j=1 to 10 step 1

print i+j

next i

next j

二、读程序写结果

4. For I = 1 To 20 Step 1

Print I,

If I Mod 5 = 0 Then

Print

End If

Next I

5. s = 10

For i = 1 To 5 Step 1

j = i * 2

s = s + j

Next i

Print i, s

答案

答案

答案

答案

6.

i = 1

Do While i <= 5

Print i

i = i + 1

Loop

i = 1

Do While i <= 5

i = i + 1

Print i

Loop

i = 1

Do

Print i

i = i + 1

Loop Until i <= 5

i = 1

Do

Print i

i = i + 1

Loop Until i >= 5

答案

7. For i = 1 To 3 Step 1

For j = 1 To 4 Step 1

Print i; "+"; j,

Next j

Print

Next i

答案

三、程序填空

8.用户输入一个大于3的正整数m,程序判断该数是否为素数。

Private Sub command1_click()

Dim m As Integer

Dim i As Integer

m = InputBox("请输入一个数:")

i = 2

Do Until __①___

i = i + 1

Loop

If __②_ Then Print m; "不是素数" Else Print m; "是素数"

答案

2.5 模块化程序设计

一、 单项选择题

1.下列自定义函数正确的是( )。

A.Public Function area(a as integer,b as integer,c as integer) as single

P=(a+b+c)/2

area=sqr(p*(p-a)*(p-b)*(p-c))

End function

B. Public Function area(a as integer,b as integer,c as integer) as single

P=(a+b+c)/2

S=sqr(p*(p-a)*(p-b)*(p-c))

End

C. Public Function area(a as integer,b as integer,c as integer) as single

P=(a+b+c)/2

S=sqr(p*(p-a)*(p-b)*(p-c))

End function

D. Public Function area(a as integer,b as integer,c as integer) as single

P=(a+b+c)/2

S=sqr(p*(p-a)*(p-b)*(p-c))

End function

2.已知利用海伦公式求三角形面积的过程如下:

Private sub area(a as integer,b as integer,c as integer,s)

P=(a+b+c)/2

S=sqr(p*(p-a)*(p-b)*(p-c))

End sub

下列调用该过程正确的是( )。

A. area(3, 4, 5, s)

B. area 3, 4, 5, s

C. area(3.1, 4.2, 5,5, s)

D. area 3.1, 4.2, 5.5, s

答案

答案

二、简答题

3.什么是“自顶向下、逐步求精”程序设计思想,其优点有哪些?

4.模块化程序设计思想的优点是什么?

提示

提示

3.1 可视化编程的概念与方法

单项选择题

1.在Visual Basic工程设计中,双击窗体中的对象后,出现的是 ( )。

A.工程窗口

B.工具箱

C.代码窗口

D.属性窗口

答案

2.在Visual Basic代码窗口中,语句="宋体"中的Student是( )。

A.对象名

B.属性名

C.属性值

D.窗口名

答案

3.在Visual Basic代码窗口中,语句Old. Caption="78"中的78是 ( )。

A.对象名

B.属性名

C.属性值

D.窗口

答案

4.要使一个命令按钮显示文字“确定”,正确的设置是把该命令的( )。

A.属性Font设置为“确定”

B.属性.Fore Color设置为“确定”

C.属性Caption设置为“确定”

D.属性Border Style设置为“确定”

答案

3.2 程序调试的方法

在程序设计过程中经常出现四种类型的错误:编辑错误、编译错误、运行错误和逻辑错误。

请完成下面的题目,体验各种错误类型。(点击这里打开素材)

1.打开素材中的文件夹“1”,修改程序中编辑时的错误,实现输入一个三位数,然后将其反向

输出。

答案

2.打开素材中的文件夹“2”,请修改程序中编译时的错误,实现用户登录程序。

答案

3.打开素材中的文件夹“3”,请修改程序中运行时的错误,实现三角形面积的计算。

答案

4.打开素材中的文件夹“4”,请修改程序中逻辑的错误,实现交换两个变量的值。

答案

3.3 综合活动

请根据题干描述的任务需求,按照模块化程序设计的思想方法,进行程序设计。

1.请编写一个程序,让计算机与我们一起玩石头、剪刀、布游戏。

答案

2.随机产生一个100以内的整数,让用户输入猜想的数。如果猜对了,显示正确的信息;如果

猜错了,显示猜错的信息,同时统计用户猜想的次数。

答案

3.图片显示程序。用单选框控制图片的显示和隐藏。

答案

4.1 用解析法设计程序

一、 单项选择题

1.如要完成:从键盘输入一个正整数,判断是否是奇数,如是就在屏幕上显示。比较好的算法

是( )。

A.①输入的数存入n变量 ②f=(n2=Int(n/2)) ③如果f的值为True就显示n的值

B.①输入的数存入n变量 ②f=(n2=Int(n/2)) ③如果f的值为False就显示n的值

C.①输入的数存入n变量 ②如果n/2=Int(n/2)成立,就显示n值

D.①输入的数存入n变量 ②如果n/2=Int(n/2)不成立,就显示n值

答案

2.a,b,c三个变量中存放不同的整数,让计算机处理一下,使:a中值最大,b中值第二。能

实现此要求,并比较好的算法是( )。

A.①定义一个max(x,y)的函数(值为x,y中大的值)②a=max(max(a,b),c) ③b=max(b,c)

B.①如a

C.①如a>b就a=b ②如a>c就a=c ③如b>c就b=c

D.①如a

答案

二、 填空题

3.以下Visual Basic程序的功能是:计算表达式1×3+2×3+3×3+…+100×3的值,并在文

本框Text1中输出计算结果。

Private Sub Command1_Click()

Dim i As Integer, s As Integer

s = 0

i = 1

Do While i <= 100

s = i * 3

i = i + 1

Loop

= Str(s)

End Sub

问:

(1)刚退出循环时,变量i的值是。

(2)为了实现上述表达式的计算,程序中画线处的表达式应更正为。

答案

4.以下Visual Basic程序的功能是:计算表达式1+3+9+27+81+…+2187的值,并在文本

框Text1中输出计算结果。

Private Sub Command1_Click()

Dim i As Integer, t As Long

t = 0

i = 1

Do While i <= 2187

t = t + i

i = i + 3

Loop

= Str(t)

End Sub

问:

(1)为了实现这一目标,程序画线处的表达式应更正为。

(2)运行更正后的程序,循环刚退出时变量i的值为。

答案

5.将一个十进制正整数转化为二进制数可以采用“除二取余法”,主要方法就是将十进制数用2

除,保存所得余数,然后将商的整数部分作为下次运算的被除数,重复上述“除二取余”操作,

直到商的整数部分为零停止。

程序界面如图VB-1所示,在文本框Text1中输入一个正整数,单击“开始转换”按钮

(Command1)后,对应的二进制数在标签Label3中显示出来。

解决此问题的算法流程图如图VB-2所示,相应的Visual Basic程序如下,在程序①和②

画线处,填入适当的语句或表达式,把程序补充完整。

Private Sub Command1_Click()

Dim x As Integer, s As String, r As Integer, t As Integer

_____①_____

s = ""

Do While x <> 0

r = x Mod 2

s = Str(r) + s

x = ________②________

Loop

n = s

End Sub

程序中①画线处应填入。

程序中②画线处应填入。

答案

4.2 用穷举法设计程

一、单选题

1 .使用穷举法解决问题,在列举问题可能解的过程中,( )。

A.不能遗漏,但可以重复

B.不能遗漏,也不应重复

C.可以遗漏,但不应重复

D.可以遗漏,也可以重复

答案

2 .鸡、兔共笼,有腿共60条,问鸡、兔各有多少只?下面鸡和兔的只数最合理的范围是(

A. 鸡:1到28,兔:1到14

B. 鸡:2到28,兔:1到14

C. 鸡:1到28,兔:2到14

D. 鸡:2到28,兔:2到14

答案

。 )

二、程序填空题

3.有30个人,其中有男人、女人和小孩。他们在一家饭馆里花去500元。已知:每个男人花30

元,每个女人花20元,每个小孩花10元。问:男人、女人、小孩各为多少人?

为了实现这一目标,完善下面的VB程序,在画线处填入合适的语句或表达式,完成程

序设计。

Private Sub Command1_Click()

Dim man As Integer, woman As Integer, child As Integer

For man = 1 To ___①___

For woman = 1 To ___②_____

child = __________③_______________

s = 30 * man + 20 * woman + 10 * child

If __________④___________ Then

Print "男人"; man; "女人"; woman; "小孩';child"

End If

Next woman

Next man

End Sub

程序中①画线处应填入

程序中②画线处应填入

程序中③画线处应填入

程序中④画线处应填入

答案

三、编程题

4.寻找“水仙花数”。水仙花数是一组三位的正整数,它们满足条件:每一位上数字的立方之

和恰好等于它自己。例如:153就是一个水仙花数,1^3+5^3+3^3=153,请找出所有的水仙花数

及个数。

答案

4.3 查找算法设计

一、 单项选择题

1.小明编辑了一个文件,现在想继续添加内容,他应该使用下列哪个语句?( ) 。

A. Open "文件名" for input as #文件号

B. Open "文件名" for append as #文件号

C. Open "文件名" for output as #文件号

D. Open "文件名" for writeagain as #文件号

答案

2.已到达文件结束处,则下列哪个函数的返回值为true?( )。

() () () ()

答案

3.有一文件只有一行,内容如下:45,"hello",则下列哪个语句可以实现让a=45,b$="hello"?

( )

A. Write #文件号,a,b$

B. print #文件号,a,b$

C. input #文件号,a,b$

D. Line input #文件号,a,b$

答案

4.定义一个二维数组k(20,30),则其元素个数是( )。

A.20×30

B.21×30

C.20×31

D.21×31

答案

5.L=instr(3,"abcdeabcde","cde"),则L=( )。

A.3

B.8

C.1

D."cde"

答案

6.下列哪个数列适合使用对半查找算法查询数据?( )。

A.1,2,3,4,4,3,2,1

B.9,8,7,6,5

C.1,3,4,7,12,40,5

D.1,3,4,7,6,8,10

答案

二、程序填空题

7.有些人喜欢在网上收集别人的E-Mail地址,然后卖给别人非法获利,现在小明想检测一下自

己的E-Mail地址xiaoming@是否被人收集在“”中,但人工找太麻烦了,

请你编制一个程序帮他解决这个问题。

Private Sub runcheck_Click()

Dim a$, b As Integer

Open "d:" For Input As #1

Do While (1)

Input #1, a$

If a$ = Then (2)

Loop

If b = 1 Then

n = "你的E-Mail地址已被收录"

Else

n = "你的E-Mail地址未被收录"

End If

(3)

End Sub

答案

8.请用二分法计算方程f(x)=2x3+3x-3=0在区间[0,2]内的一个实根,要求精确到小数点后

第2位。

Private Sub Command1_Click()

Dim x, x1, x2, result1, result2, result As Double

x1 = 0

x2 = 2

result1 = 2 * x1 * x1 * x1 + 3 * x1 - 3

result2 = 2 * x2 * x2 * x2 + 3 * x2 - 3

If result1 * result2 < 0 Then

Do

x = (1)

result = 2 * x * x * x + 3 * x - 3

If (2) Then

(3)

result1 = result

Else

x2 = x

(4)

End If

Loop Until Abs(result) <= 0.01

Print x

Else

Print "在[" & x1 & "," & x2 & "]之间没有根"

End If

End Sub

答案

4.4 排序算法设计

一、 单项选择题

1.对一个数组进行排序一般用( )重循环来实现。

A.单 B.2 C.3 D.4

答案

2.选择排序的外循环次数是( )。

A.N B.N+1 C.N-1 D.N+内循环变量

答案

二、程序填空题

3.小明在输入一批人(10个)的年龄数据,由于要计算养老金,因此希望能对这些年龄数据从小

到大排列,你能用选择排序法帮他的忙吗?(要求每趟比较完成后才交换一次数据,而不是每次

比较都要交换)

Private Sub command1_Click()

Dim a(1 To 10) As Integer, i, j, temp, temporder As Integer

Dim b as string

For i = 1 To 10

b = "请输入第" & i & "个数"

a(i) = Val (1)

Next i

For i = 1 To (2)

temporder = i

For j = (3) To 10

If a(j) < a(temporder) Then (4)

Next j

temp = a(i)

a(i) = a(temporder)

a(temporder) = temp

Next i

For i = 1 To 10

Print a(i);

Next i

End Sub

答案

4.从键盘上接收10个数,接收过程请用插入排序法把该数列按从小到大来排序。

Private Sub runprogram_Click()

Dim a(1 To (1) ) As Integer, i, j, k, temp As Integer

Dim b as string

a(1) = Val(InputBox("请输入第1个数"))

Print a(1);

Print

For i = 2 To 10

b = "请输入第" & i & "个数"

temp = Val(InputBox(b))

If a(i - 1) < temp Then

(2)

Else

For j = 1 To (3)

If a(j) > temp Then

For k = (4) To j Step -1

a(k + 1) = a(k)

Next k

(5)

Exit For

End If

Next j

End If

For k = 1 To i

If a(k) = temp Then

Print "("; a(k); ")";

Else

Print a(k);

End If

Next k

Print

Next i

End Sub

答案

4.5 递归算法与递归程序

一、 判断题

1.在定义一个过程或者函数时出现直接调用自身过程或自身函数的成分,称为递归。( )

答案

2.递归过程是指直接或间接调用自身的过程。( )

答案

3.递归方法是指一种可以在无限步骤内,根据特定的法制或公式对一个或多个前面的元素进行

运算,以确定一系列元素(如数或者函数)的方法。( )

答案

二、 程序填空题

4.下面是求解1!+2!+……100!和的程序。

Function q(n As Integer) As Double

If ___①____ Then

' 递归求解N!

___②____

Else

___③____

End If

End Function

Function f(n As Integer) As Double

If ____④___ Then

' 递归求解1!+2!+……+n!

___⑤____

Else

___⑥____

End If

End Function

Private Sub Command1_Click()

MsgBox "1!到100!的和" & f(100)

End Sub

5.阅读程序,填写结果。

Function dg(ByVal n As Integer) As Long

If n = 1 Then

dg = 1

Else

dg = dg(n - 1) + n

End If

End Function

Private Sub Command1_Click()

= dg(100)

输出答案为

6.阅读下列求3!+5!+7!的两个程序:

程序一 程序二

Private Sub Command1_Click() Private Sub ()

Dim S As Integer, K As Integer, Dim S as Integer

Dim T As Integer, I As Integer S=Fac(3)+ Fac(5)+ Fac(7)

答案

答案

For I = 3 To 7 Step 2

T = 1

For K = 2 To I

T = T * K

Next K

S = S + T

Next I

Print "S="; S

End Sub

Print “S=”;S

End Sub

Public Function Fac(A As Integer)As Integer

If A=0 Then

Fac=1

Else

Fac=A*Fac(A-1)

End If

End Function

请比较两个程序:

(1)程序1使用了算法。

(2)程序1与程序2比较,从程序设计思想上看,有什么不同?

二、程序设计题

7.用递归算法设计程序:将数转为字符串。

答案

答案

5.1 面向对象程序设计的基本思想

一、 填空题

1.面向对象的 _________ 、 __________ 和 ___________ ,可以使软件开发过程更为简单、清

晰,程序的复杂性不断降低,正确性不断加强,并且易于理解,修改和扩充。

答案

二、 选择题

2.与传统的程序设计方法相比,面向对象程序设计有诸多优势,下列选项中哪个不是( )。

A.可以用于解决软件复杂性的控制

B.可以提高软件的生产力

C.可以极大提高程序的运行速度和安全性

D.可以使软件开发过程更为简单、清晰

答案

Basic 是一种面向对象的程序设计语言,构成对象的三要素是:( )。

A.属性、事件、方法

B.控件、属性、事件

C.窗体、控件、过程

D.窗体、控件、模块

答案

三、判断题

4.在面向对象系统的求解空间中,有对象和类,若把现实世界中的事物直接映射到面向对象的

软件系统求解空间,那么物质对应于对象,而意识对应于类。( )

答案

5.2 面向对象程序设计的基本概念

一、 填空题

1.程序中的对象是把 和 封装成一个整体,是程序运行时的基本实体,是含有数据以及对其操作

的程序模块。

答案

2.在面向对象的程序设计中,将一组对象的共同特性抽象出来形成。

二、选择题

3.对于对象及其特征的错误理解是( )。

A.对象都具有一个标识自己以区别其他对象的名字

B.对象都具有自身的属性及其属性值

C.对象一般只用数据表示属性,但不用代码表示行为

D.对象都具有自身的行为(操作)

4.在如下图所示的 Visual Basic 窗体中,这些被放入窗体中的控件称之为(

A. 类

B. 事件

C. 属性

D. 对象

5.下列有关类、对象和实例的说法中,错误的是( )。

A.类是对象的模型,根据同一个模型可以建立相同的对象

B.对象是类的具体化,是类的实例

C.由类创建对象的过程称为实例化,每个对象是类的一个实例

D.类是具体的事物,以对象为模板来生成

三、判断题

答案

答案

)。

答案

答案

6.类和对象之间的关系是抽象和具体的关系。( )

7. Visual Basic 中的对象就是指控件。( )

答案

答案

5.3 面向对象的功能实现

一、 填空题

中创建一个方法的步骤: 、、。

答案

二、选择题

2.每次使用一个类的新对象时,都必须进行以下工作,其中错误的是( )。

A.创建对象

B.创建类

C.使用对象的属性和方法

D.释放对对象的引用

答案

3. VB 面向对象的程序设计一般过程是( )。

A.编写类代码 → 类声明为对象变量 → 根据类创建对象实例 → 对实例进行属性和方法的设

置或调用

B.类声明为对象变量 → 根据类创建对象实例 → 编写类代码 → 对实例进行属性和方法的设

置或调用

C.根据类创建对象实例 → 对实例进行属性和方法的设置或调用 → 编写类代码 → 类声明为

对象变量

D.编写类代码 → 根据类创建对象实例 → 类声明为对象变量 → 对实例进行属性和方法的设

置或调用

答案

三、判断题

中作用域关键字 Private 表明可以在类外部调用代码, Public 表明只能调用类中的代码。

( )

答案

四、操作题

5.设计一个模拟手电筒光照效果的程序。(具体操作任务、素材、提示请下载手电筒操作题压

缩包)

6.1 多媒体应用程序设计

单项选择题

1. ySize=mpFitToSize具有的功能是( )。

A. 使视窗全屏显示

B. 使视窗大小为原始大小

C. 使视窗大小为原始大小的1/4屏幕

D. 使视窗大小由控件的高度、宽度决定

2.结束当前程序的语句是( )。

3.在用菜单编辑器设计菜单时,必须输入的项有( )。

A. 快捷键

B. 标题

C. 索引

D. 名称

答案

答案

答案

6.2 数据库管理软件的开发

一、 单项选择题

1属性Database的作用是( )。

A. 指定Data1的控件名

B. 用于指定Data1控件所链接的数据库中的某一张表

C. 用于指定要链接的数据库的完整路径信息

D. 用于指定数据控件要链接的数据格式

答案

2.如果想在Data1控件中实现查找第一个姓谢的记录,应如何设置( )。

A. rst“姓名” Like ‘谢*’

B. rst“姓名” as ‘谢*’

C. evious“姓名” Like ‘谢*’

D. evious“姓名” as ‘谢*’

答案

3.如果想在Data1控件中实现移动到前一笔记录的功能,应如何设置( )。

A. st

B. xt

C. evious

D. rst

答案

4.下列数据控件的常用方法不正确的是( )。

添加一笔记录

删除记录当前内容

h 更新数据控件的数据内容

将可更新记录的当前记录内容复制至缓冲区中以便进行编辑操作

答案

二、程序设计题

5.某校学生都很喜欢看书,为了让全校同学都能共享每个同学所拥有的图书,小李同学带头设

立了一个小小图书馆。现在他们想通过数据库来管理他们的小图书馆,可他们现在还没学到这

方面的知识,请你就这情况帮他们设计这个数据库,你会怎么做?

答案

《算法与程序设计》测试题(一)

考试时间:90分钟 满分:100分

第一卷

一、单项选择题:(共20个空,每空2分,共40分)

1. 使用计算机解题的步骤,以下描述正确的是 ( )。

A. 正确理解题意→设计正确算法→寻找解题方法→编写程序→调试运行

B. 正确理解题意→寻找解题方法→设计正确算法→编写程序→调试运行

C. 正确理解题意→寻找解题方法→设计正确算法→调试运行→编写程序

D. 正确理解题意→设计正确算法→寻找解题方法→编写程序→调试运行

2. 下列算法展示了一台自动售货机一次售货的工作流程:

步骤1:等待接收一枚硬币;

步骤2:若硬币面值不是0.1元、0.5元、1元,退回硬币;

步骤3:若投入货款达1.5元或以上,执行步骤4和5;

步骤4:售出一个口香糖;

步骤5:从接收货款中减去1.5元;

步骤6:退回余额。

下列关于这个算法说法正确的是( )。

A. 上述算法采用自然语言表示

B. 这台自动售货机在任何情况下也不会售出口香糖

C. 上述算法属于顺序算法结构

D. 这台自动售货机只会在接受硬币达2元时才放出口香糖

3. Visual Basic规定窗体文件的扩展名是( )。

A..for

B..frm

C..vbp

D..bas

4.假设某一程序如下,则能触发该程序的事件是( )。

Private Sub command2_Click()

n=“VB示例”

End Sub

A.command2

B.click

C.form1

D.caption

5. 下列结果为True的逻辑表达式是( )。

A. Not(3<8)

B. (3<8)And(5>10)

C. (3<8)And(5<10)

D. (3>8)Or(5>10)

6. 以下语句中正确的是()。

A. Const var1 as integer=50000

B. Dim 888fl as String

C. x+y = 9

D. Dim d(1 to 500) As Double

7. 在VB中,添加一个标签,在工具箱中要单击控件是( )。

A.

B.

C.

D.

8. 下列运算结果中,值最大的是( )。

A. 34

B. 3/4

C. 4 mod 3

D. 3 mod 4

9. 表达式abs(int(-3.4))*sqr(100)的值是( )。

A.-340

B.-34

C.30

D.40

10. 若i = 1,j = 9,则运行Print i; "*"; j; "="; i *j 的结果是( )。

A. 1 * 9 = 9

B. i *j = 9

C. i * j =i *j

D. 9

11.下列Visual Basic程序段运行后,变量max的值为( )。

a=5

b=10

max=a

IF b>max Then max =b

A.5

B.10

C. 5和10

D.以上都不是

12.下列四种描述中,符合以下程序的是( )。

for k=11 to 20

x=inputbox(“请输入一个整数”)

y =x^2

next

print x,y

A. 读入10个不同的x值,只计算最后一个y值,只输出最后一个x,y

B. 读入10个不同的x值,计算10个不同的y值,输出10个不同的x,y值

C. 只读入一个x值,进行10次相同的运算,输出10个相同的x,y值

D. 读入10个不同的x值,计算10个不同的y值,只输出最后一个x,y值

13.下列程序段中可以输出整数1-5的是( )。

A.

i = 1

Do While i > 5

i = i + 1

Print i

Loop

B.

i = 1

Do While i <= 5

i = i + 1

Print i

Loop

C.

i = 1

Do While i <= 5

Print i

i = i + 1

Loop

D.

i = 1

Do until i <= 5

Print i

i = i + 1

Loop

14.执行下面程序段的结果是( )。

n=6

for d=1 to n

If n mod d=0 then

print d;

endif

next d

A.1 6

B.1 2 3

C.1 2 3 6

D.1 2 3 4 5 6

15.阅读下面的程序段:

a=0

For m=1 To 3

For n=1 To m

a=a+1

Next

Next

执行上面的程序后,a 的值为( )。

A. 3

B. 5

C. 6

D. 9

16.关于模块化程序设计以下说法中错误的是( )。

A. 模块化程序设计体现了“自顶而下、逐步求精”的程序设计的基本思想

B. 模块化程序设计主要通过过程和函数的定义和调用来实现

C. 模块化程序设计可以提高程序运行速度

D. 模块化程序设计有利于程序的的阅读和修改

17.有一组数,顺序是“4,7,8,1,9”,用选择排序法将这组数从小到大排序,第二次交换数

据后的顺序是( )。

A. 1、4、7、8、9

B. 1、4、8、7、9

C. 1、7、8、9、4

D. 1、7、8、4、9

18.下列表述中不含递归现象的是( )。

A. 站在两面平行的镜子中间照镜子,镜子中的影像成“像中像”

B. 定义自然数:0是自然数,比自然数大1的数是自然数

C. 乘法九九表

D. “从前有个庙,庙里有个老和尚在给小和尚讲故事,老和尚说:‘从前有个庙,庙里有个老和

尚在给小和尚讲故事,老和尚说:……”

19.要向已包含数据的文件追加数据,正确的文件打开命令是( )。

A. open “” for output as #1

B. open “” for input as #1

C. open “” for append as #5

D. open “” for write as #1

20.下面是一组有序的数组元素:

1

all

2

bre

3

car

4 5 6

dua eve fre

7 8 9 10

geo hen hoo joe

11

kar

12 13 14

kea mar oli

现进行对分查找,查找joe要依次访问的是( )。

A. geo kea kar joe

B. geo car kar joe

C. geo kar hoo joe

D. geo hoo kar joe

第二卷

二、填空题(共15个空,每空3分,共45分)

21. 编程计算s=1*2+3*4+5*6+7*8+9*10:

Private Sub command1_Click()

S=0

For k=1 to 10 step (1)

s=(2)+k*(3)

Next k

Print s

End sub

程序中(1)处应填入。

程序中(2)处应填入。

程序中(3)处应填入。

22.有一古算术问题:“有100块瓦,用100匹马来驮。大马1驮3,中马

问:要大马、中马、小马各几匹?”

Private Sub Command1_Click()

Dim x, y,z As Integer' x代表大马、y代表中马、z代表小马

For x = 1 To (1)

For y = 1 To (2)

z =(3)

If (4)Then

Print x,y,z

End If

Next y

Next x

End Sub

程序中(1)处应填入。

程序中(2)处应填入。

程序中(3)处应填入。

程序中(4)处应填入。

1驮2,小马2驮1。

23.以下为用辗转相除法求两数的最小公倍数和最

大公约数的程序和流程图,请根据流程图填写程序

中空白处。

Private Sub Command1_Click()

m = InputBox("输入第一个自然数")

n = InputBox("输入第二个自然数")

If m < n Then

t = m

(1)

n = t

end if

p = n * m

r = m Mod n

Do While (2)

m = n

n = r

(3)

Loop

Print p/n,n

End Sub

程序中(1)处应填入。

程序中(2)处应填入。

程序中(3)处应填入。

24.采用选择排序法,将随机产生的100以内的10个整数按由大到小的顺序排列。

Private Sub Command1 _Click()

Dim s(10) as integer, dim max as integer, dim maxnum,m,.n,temp as integer

Randomize '初始化随机数发生器

For m=1 to 10

S(m)=(1) '随机产生的100以内的整数

Next m

For m=1 to 10

Max= S(m)

Maxnum=(2)

For n= (3)to 10

If (4)Then

max=s(n)

maxnum=(5)

End If

Next n

Temp= s(m)

S(m)=max

S(maxnum) =temp

Next m

For m=1 To 10

Print s(m)

Next m

End Sub

程序中(1)处应填入。

程序中(2)处应填入。

程序中(3)处应填入。

程序中(4)处应填入。

程序中(5)处应填入。

三、阅读程序,写出运行后输出的结果:(每题

25.

Private Sub Command1_Click()

dim x as single,y as string

x = Round(5.4)

Select Case x

Case 1 To 5

y = mid(“welcome”,3,2)

Case 6 To 10

y = left(“welcome”,3)

Case Else

y = right(“welcome”,3)

End Select

Print “you”+y

End sub

运行结果:

26.

Private Sub Command1_click()

Dim x, y As Integer

x = 5

y = 0

If x < 10 Then

y = 10

If x < 100 Then

5分,共15分)

y = 100

End If

Else

y = 200

End If

Print y

End Sub

运行结果:

27.

Private Sub Command1_click()

Dim n, a As Integer

n = 6

a = 0

Do While n > 1

a = 1

Do

Print " * ";

a = a + 1

Loop Until a >= n

Print

n = n - 1

Loop

End Sub

运行结果:

《算法与程序设计》测试题(二)

考试时间:90分钟 满分:100分

第一卷

一、 单项选择题:(共20个空,每空2分,共40分)

1.下面关于算法的认识,错误的是( )。

A. 算法是解决问题的方法和步骤

B. 算法有一个或多个的输出

C. 算法就是计算机程序

D. 算法的步骤必须是有限的

2.关于数组的说法,下面错误的是( )。

A. 同一数组中的数据类型一定相同

B. 数组元素个数是有限的

C. 可以定义字符串类型的数组

D. 同一个程序的数组数据类型一定相同

3.设置窗体标题时,应改变窗体的( )属性。

A.Name

B.Font

C.BackColor

D.Caption

4.不能使用“do”作为变量名的原因是( )。

A.由英文字母开头

B.后面没有使用数字

C.使用了英文单词

D.使用了关键字

5.代数式对应的VB表达式是( )。

A. (a + b)/(c - d)

B. (a + b)/c – d

C. a + b/(c - d)

D. a + b/c - d

6.若变量a的值为34000,则变量a的数据类型不可能为(

A.integer

B.long

)。

C. single

D. double

如图所示的流程图为求x的绝对值的算法。

请回答7-8题:

7.根据算法,流程图中①处的内容是( )。

A. 输入-x

B. 输入x

C. 输入y

D. 输入-y

8.该算法包含了( )控制结构。

A. 顺序结构

B. 选择结构

C. 顺序和循环结构

D. 顺序和选择结构

9.在VB语言中,下列正确的赋值语句是( )。

A. a + a = 2

B. 3 * a = c – 5

C. a = 2 * a

D. a + 3 = b

10.在VB中,假定有以下程序段:

For i=1 to 3 step 2

Print “VB”

Next i

则语句print “VB”的执行次数是( )。

A.4

B.3

C.2

D.1

11.下面一组语句能令数组的两个元素a(i)与a(j)交换数据的是( )。

A.temp=a(i): a(i)=a(j): a(j)=temp

B.temp=i: i=j: j=temp

C. temp=a(i): a(j)=a(i): a(i)=temp

D.temp=a(j): a(i)=a(j): a(j)=temp

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

A. 0 < b or a < 5

B. a > 5 And b < 0

C. a > 5 Or b < 0

D. a > 0 And b < 5

13.若a = 4,b = 5,则运行Print a; "+"; b; "="; a + b的结果是( )。

A.4+5=9

B.a+b=9

C.a+b=a+b

D.9

14.下列循环语句中循环次数无限的是(

A.

x=0

Do

x=x+1

Loop untilx>0

B.

x=1

Do

x=2*x+1

Loop untilx=3

C.

x=5

Do

x=x-2

Loop until x>=3

D.

x=1

Do

x=x+2

Loop until x=8

15.关于函数与过程的说法,正确的是(

A. 过程结束时一定要返回一个值

B. 过程内一定要定义变量

C. 可以在表达式中调用过程

D. 函数一定要有返回值

16.二分法查找的前提是( )。

A. 被查找数据元素个数是奇数

B. 被查找数据元素个数是偶数

C. 被查找数据元素是有序的

D. 被查找数据元素是无序的

)。

)。

17.当一个顺序文件通过( )方式打开以后,才能向此文件写入数据。

A. for input 或 for output

B. for input 或 for append

C. for output 或 for append

D. 以上都可以

18.用选择排序法对数据7,8,3,9,2从小到大排序,第3趟结果是( )。

A. 2,3,7,9,8

B. 3,8,2,7,9

C. 3,2,8,7,9

D. 3,7,8,9,2

19.要从n个数据元素中顺序查找一个元素,最多查找次数是( )。

A.1

B. n

C. n/2

D. lgn

20.《孙子算经》上有一道“物不知数”问题:“今有物不知其数,三三数之剩二,

五五数之剩三,七七数之剩二。问物几何?”该问题应采用( )。

A. 解析法

B. 查找法

C. 穷举法

D. 递归算法

第二卷

二、填空题(共10个空,每空3分,共30分)

21.编程计算s=1*(-2)*3*(-4)*……*49*(-50)

Private Sub Form_Click()

Dim s as integer,i as single

s= (1)

For i=1 to 50

If (2)then

s=s*i

else

s= (3)

next i

print“s=”;s

end sub

程序中(1)处应填入。

程序中(2)处应填入。

程序中(3)处应填入。

22.某顾客欲将300元全部换成10元、20元、50元的纸币(每种面额至少1张),

请问有几种换法?

Private Sub Form_Click()

Dim a as integer,b as integer,c as integer ,n As integer

’a,b,c分别代表10,20,50元面额的张数;n代表换法

n= (1)

For a=1 to 30

For b=1 to (2)

For c=1 to30

If (3)then n=(4)

Next c

Nextb

Next a

print“n=”;n

end sub

程序中(1)处应填入。

程序中(2)处应填入。

程序中(3)处应填入。

程序中(4)处应填入。

23.编写递归函数求5!的值。

Public Function s(n As Integer) As Long

If n = 1 Then

s =(1)

Else

s = (2)

End If

End Function

Private Sub form_Click() ' 调用递归函数,显示结果

Print "s(5)="; (3)

End Sub

程序中(1)处应填入。

程序中(2)处应填入。

程序中(3)处应填入。

三、阅读程序,写出运行后输出的结果:(前两题每题5分,后两题每题10分,

共30分 )

24.

Private Sub Command1_Click() dim x as integer,y as single

x = Round(5.4)

Select Case x

Case 1 To 5

y = 4 + Abs(x)

Case 6 To 10

y = 50 * x

Case Else

y = x ^ 2

End Select

Print y

End sub

25.

Private Sub Command1_Click()

Dim m as integer,n as integer

Dim t As Integer

m = 10

n = m * 2

t = m * n

print t

End Sub

运行结果:

26.

Private Sub Command1_Click()

Dim a as integer, b as integer, t as integer

Dim ma as integer, mb as integer, n As Integer

a = 12: b = 8: n = 20

t = 0

Do

t = t + 1

ma = t * a Mod n

mb = t * b Mod n

Loop Until ma = mb

Print t

End Sub

运行结果:

27.

Private Sub Command1_Click()

Dim m1 as integer,m2 as integer

Dim j as integer,a(5) as integer

For j = 1 To 5

a(j) = InputBox("")

Next j

m2 = 1

m1 = a(1)

For j = 2 To 5

If a(j) > m1 Then

m1 = a(j)

m2 = j

End If

Next j

Print m1

Print m2

End sub

若输入的数分别是237, 126, 87, 48, 498,则输出结果是什么?

运行结果:

精讲视频

操作示范

作品素材

精练评价

当前位置:精练评价

第一章 揭开计算机解决问题的神秘面纱

1.1 计算机解决问题的过程

1.2 算法和算法的描述

1.3 程序与程序设计语言

第二章 程序设计基础

2.1 VB语言及程序开发环境

2.2 程序的顺序结构

2.3 程序的选择结构

2.4 程序的循环结构

2.5 模块化程序设计

第三章 可视化编程

3.1 可视化编程的概念与方法

3.2 程序调试的方法

3.3 综合活动:心算练习程序设计

第四章 算法和程序实现

4.1 用解析法设计程序

4.2 用穷举法设计程序

4.3 查找算法设计

4.4 排序算法设计

4.5 递归算法与递归程序

第五章 面向对象征程序设计

5.1 面向对象程序设计的基本思想

5.2 面向对象程序设计的基本概念

5.3 面向对象的功能实现

第六章 程序设计实践

6.1 多媒体应用程序设计

6.2 数据库管理软件的开发

《算法与程序设计》模拟测试卷(一) (Word版)

《算法与程序设计》模拟测试卷(二) (Word版)


本文标签: 程序 算法 程序设计 对象 方法