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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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

考试时间: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.1B.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)

相关文档
最新文档