算法与程序设计试题
一、选择题:
1VB程序中“Dim n As Integer”这条语句的作用是(B   
A定义一个数据输入方法        B定义一个变量
C定义一个数据处理方法        D定义一个事件过程
2、一元二次方程ax2+bx+c=0a0)的两个实数根分别为:
下列表达式正确的是( B
Ax2=-b-sqr(b^2-4*a*c)/(2*a)
Bx2=(-b-sqr(b^2-4*a*c))/(2*a)
Cx1=(-b+sqr(b^2-4ac))/(2*a)
Dx1=-b+sqr(b^2-4*a*c)/(2*a)
3、长度分别为abc的三条线段,能够组成三角形的条件是(D 
    Aa+b>c  And  a+c>b  Or  b+c>a
    Ba+b>c  Or  a+c>b  Or  b+c>a
    Ca+b>c  Or  a+c>b  And  b+c>a
    Da+b>c  And  a+c>b  And  b+c>a
4、下列关于算法的描述,正确的是(D
    A、算法就是数值计算的方法
    B、描述算法的方法只有流程图
    C、同一种算法只能用一种程序语言来实现
    D、算法是描述解决问题的方法和步骤
5、编制计算机程序解决问题的一般过程是:分析问题、编写程序、调试运行、设计算法。B
    A、正确            B、错误
6、下列问题不能用算法描述的是(D
    A、已知圆锥的底面半径和高,求表面积和体积
    B、计算某班英语平均分
    C、求一元二次方程ax2+bx+c=0a0)的两个实数解
    D求方程y=2X+1的所有整数解
7、在VB语言中表示“x属于区间(0,1]”的正确表达式是(
    A0<x  and  x<=1    Bx>0  or x<=1
    Cx>0 and x<1        D0<x<1
8、已知海伦公式:其中abc分别为        三角形的三条边长。利用海伦公式求三角形面积的算法属于(  D  vb程序设计简单吗
    A、穷举法B、排序法C、查法D、解析法
9、用计算机编程来求解某一方程的解,通常的步骤是(
    A、分析问题→设计算法→编写程序→调试运行→检测结果
    B、编写程序→调试运行
    C、设计算法→编写程序
    D、编写程序→调试程序→检测结果
10、如果输出三条线段的长分别为abc,且已知abc,请问这三条线段能否构成三角形,仅需下列选项中的哪个判定条件即可?(  B
    A其他选项都不对              Ba +b>c
    Ca+c>b                        Db+c>a
11、关于算法的描述,下列选项中正确的是( B
    A算法本身就是一种程序设计语言        B算法的每一步骤必须有确切的含义
    C算法必须有输入                    D算法的步骤可以是无穷的
12、下列选项中,不属于计算机程序设计语言的是(  B
    A汇编语言    B自然语言    C高级语言    D机器语言
13、下列VB表达式中,能正确表示不等式方程的>1解的是(
    Ax>-1 and x<1        Bx<-1 or x>1
    Cx<-1 and x>1        Dx>-1 or x<1
14、下列选项中,可以作为VB程序变量名的是(  B 
    Aa/b    Bab    Ca-b    Da+b
15、以下程序段中循环体执行的次数是(
s=0
i=1
Do While s<10
i=i+1
s=s+i*i
Loop
A2        B4    C1    D3
16、算法的描述方法有多种,下列选项中不适合描述算法是( C
A流程图    B伪代码    C机器语言        D自然语言
17、下列VB程序运行时(如图所示),在文本框Text1中输入20,在文本框Text2中输入13,单击命令按钮command1后,文本框Text3中显示的内容是(B 
Private Sub Command1_Click()
  a=)
b=)
=a+b
End Sub
A”33”        B33        C”2013”        D2013
18、二分查又称折半查,是一种应用于有序数列的高效查算法 的是( D 
(1) 11    99    5    17    2    39
(2) 30    52    63    71    78    81
(3) 67    32    38    3    15    15   
(4) 85    78    59    52    19    18
A、(3)(4        B、(2)(3        C、(1)(2        D、(2)(4
19、已知在VB语言中,intx)函数的功能是返回不大于x的最大整数,absx)函数的功能是取绝对值,则表达式abs(int(2.88)+int(-3.14))的值是(  D 
A5    B1    C0    D2   
20 关于算法的描述,下列选项中正确的是(  A 
A 、一个算法可以没有输入
B、一个算法的执行步骤可以是无限的
C、算法只能用流程图来表示
D 一个算法,当没有输入时,也没有输出
21、下列VB表达式中:(1Sqrx)(2t 3Command1.caption445+34(5)45+34值为字符串类型的是(  D   
A、(1)(3)(5  B、(1)(2)(3    C、(2)(4)(5  D、(2)(3)(4
22、在VB语言中吗,字符串运算符“+”和“&”的作用是把两个或多个字符串连接成一个字符串,则表达式“20+13&20+13”的运算结果是(  C 
A、“3333    B、“201333    C、“201320+13    D、“332013
23vb语言中常用的字符串截取函数有:(6分)
函数名
功能
示例
结果
Mid(s,m,n
从字符串s的第m位开始,截取长度为n的字串
Mid”ABCDEFG”,52
” EF”
Left(s,n)
截取字符串s左边n个字符
Left”ABCDEFG”,3
”ABC”
Right(s,n)
截取zifuchuans右边n个字符
Right(“ABCDEFG”,2)
” FG”
假如某人身份证号码    S=”370102199602190000”,如果需要根据此身份证号码求出该人的“出生年月日”。下列表达式不能实现的是  D          )(单选)
AMid(s,7,8)
    BRight(Left(s,14),8)
CMid(s,7,4)+Mid(s,11,2)+Mid(s,13,2)
DLeft(s,14)-Left(s,6)
23、两个阻值分别R1R2的电阻并联后,电路阻值R可由公式 1/R=1/R1+1/R2求解,下面能正确求出VB表达式的是(A   
A R1*R2/(R1+R2)
B R1+R2/(R1*R2)
C R1*R2/R1+R2
D (R1+R2)/(R1*R2)
24、一个单窗体Vb程序的运行界面如下图所示:下列说法正确的是  A
(1) 窗体内有1个按钮
(2) 窗体内有2个文本框
(3) 窗体内有3个标签
(4) 该窗体的标题(caption)属性值是“加法计算器”
A (1)(4)    B(3)(4)        C(1)(2)    D(2)(3)
二、程序题目
1Vb语言中绘制圆的方法是:
Circle (x,y),r
格式说明:其中(xy)为圆心坐标,r为圆的半径。
下表中算法1是在窗体中绘制以(2000,2000)为圆心,半径依次为100200、……、到8008个同心圆。
请补充完成算法2,使其实现与算法1相同的功能。(6分)
算法1
算法2
Circle 2000,2000),100
Circle 2000,2000),200
Circle 2000,2000),300
Circle 2000,2000),400
Circle 2000,2000),500
Circle 2000,2000),600
Circle 2000,2000),700
Circle 2000,2000),800
Dim k As Integer
For k=1 To 8
    Circle(2000,2000),    K*100  
Next k
2、阅读下列程序,请写出正确的运行结果
    Dim a as integer
    Dim b as integer
    Dim c as integer
    a=1
    b=1
    For i=1 to 4
          c=a+b
a=b
b=c
Next i
Print c
运行结果是:    8   
3、阅读下列程序,写出运行结果
Dim n as long
Dim s as long
Dim x as long
n=val(inputbox("n="))
s=0
Do while n>0
  x=n Mod 10
  s=s+x
  n=n\10
loop
print s
程序运行时,输入518,运行输出结果是:  14      6分)
(提示:
\    (整除运算)      如:237\10=23
Mod  (取余数运算如:237  Mod 10=7
4、某VB的事件过程如下:
Private Sub Command1_Click()
a=)
b=a*a+1
=b
End sub
程序运行时(如图所示),在文本框text1中输入2,连续2次单击命令按钮Command1后,text1中显示的是( 26
52005109日,国家测绘局正式宣布珠穆朗玛峰的高度是8844.43米,并停用之前的数据。现有一张白纸的厚度大约是0.08毫米,对折一次,厚度变0.16毫米,再对折一次,厚度变为0.32毫米,……每对折一次,其厚度均变为对折前的两倍。假设这张纸有足够大,可对折任意次,那么这张纸至少对折多少次后,其厚度将超过珠穆朗玛峰的高度。以下是求解该问题的程序片段,请你补全代码。(4分)
Height=8844.43    ’珠穆朗玛峰的高度是8844.43
h=0.08            ’一张纸的厚度约是0.08毫米
cnt=0              ’cnt用来记录对折次数
Do while h<Height*1000
  cnt=cnt+1

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。