算法与程序设计试题
一、选择题:
1、VB程序中“Dim n As Integer”这条语句的作用是(B )
A、定义一个数据输入方法 B、定义一个变量
C、定义一个数据处理方法 D、定义一个事件过程
2、一元二次方程ax2+bx+c=0(a≠0)的两个实数根分别为:
下列表达式正确的是( B )
A、x2=-b-sqr(b^2-4*a*c)/(2*a)
B、x2=(-b-sqr(b^2-4*a*c))/(2*a)
C、x1=(-b+sqr(b^2-4ac))/(2*a)
D、x1=-b+sqr(b^2-4*a*c)/(2*a)
3、长度分别为a、b、c的三条线段,能够组成三角形的条件是(D )
A、a+b>c And a+c>b Or b+c>a
B、a+b>c Or a+c>b Or b+c>a
C、a+b>c Or a+c>b And b+c>a
D、a+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=0(a≠0)的两个实数解
D、求方程y=2X+1的所有整数解
7、在VB语言中表示“x属于区间(0,1]”的正确表达式是( A )
A、0<x and x<=1 B、x>0 or x<=1
C、x>0 and x<1 D、0<x<1
8、已知海伦公式:其中,a、b、c分别为 三角形的三条边长。利用海伦公式求三角形面积的算法属于( D )vb程序设计简单吗
A、穷举法B、排序法C、查法D、解析法
9、用计算机编程来求解某一方程的解,通常的步骤是(A )
A、分析问题→设计算法→编写程序→调试运行→检测结果
B、编写程序→调试运行
C、设计算法→编写程序
D、编写程序→调试程序→检测结果
10、如果输出三条线段的长分别为a、b、c,且已知a≤b≤c,请问这三条线段能否构成三角形,仅需下列选项中的哪个判定条件即可?( B)
A、其他选项都不对 B、a +b>c
C、a+c>b D、b+c>a
11、关于算法的描述,下列选项中正确的是( B )
A、算法本身就是一种程序设计语言 B、算法的每一步骤必须有确切的含义
C、算法必须有输入 D、算法的步骤可以是无穷的
12、下列选项中,不属于计算机程序设计语言的是( B )
A、汇编语言 B、自然语言 C、高级语言 D、机器语言
13、下列VB表达式中,能正确表示不等式方程的>1解的是( B )
A、x>-1 and x<1 B、x<-1 or x>1
C、x<-1 and x>1 D、x>-1 or x<1
14、下列选项中,可以作为VB程序变量名的是( B )
A、a/b B、ab C、a-b D、a+b
15、以下程序段中循环体执行的次数是(A )
s=0
i=1
Do While s<10
i=i+1
s=s+i*i
Loop
A、2 B、4 C、1 D、3
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” B、33 C、”2013” D、2013
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语言中,int(x)函数的功能是返回不大于x的最大整数,abs(x)函数的功能是取绝对值,则表达式abs(int(2.88)+int(-3.14))的值是( D )
A、5 B、1 C、0 D、2
20、 关于算法的描述,下列选项中正确的是( A )
A 、一个算法可以没有输入
B、一个算法的执行步骤可以是无限的
C、算法只能用流程图来表示
D、 一个算法,当没有输入时,也没有输出
21、下列VB表达式中:(1)Sqr(x)(2)t (3)Command1.caption(4)”45”+”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”
23、在vb语言中常用的字符串截取函数有:(6分)
函数名 | 功能 | 示例 | 结果 |
Mid(s,m,n | 从字符串s的第m位开始,截取长度为n的字串 | Mid(”ABCDEFG”,5,2) | ” EF” |
Left(s,n) | 截取字符串s左边n个字符 | Left(”ABCDEFG”,3) | ”ABC” |
Right(s,n) | 截取zifuchuans右边n个字符 | Right(“ABCDEFG”,2) | ” FG” |
假如某人身份证号码 S=”370102199602190000”,如果需要根据此身份证号码求出该人的“出生年月日”。下列表达式不能实现的是 D ( )(单选)
A.Mid(s,7,8)
B.Right(Left(s,14),8)
B.Right(Left(s,14),8)
C.Mid(s,7,4)+Mid(s,11,2)+Mid(s,13,2)
D.Left(s,14)-Left(s,6)
23、两个阻值分别R1、R2的电阻并联后,电路阻值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)
二、程序题目
1、Vb语言中绘制圆的方法是:
Circle (x,y),r
格式说明:其中(x,y)为圆心坐标,r为圆的半径。
下表中算法1是在窗体中绘制以(2000,2000)为圆心,半径依次为100、200、……、到800的8个同心圆。
请补充完成算法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 )
5、2005年10月9日,国家测绘局正式宣布珠穆朗玛峰的高度是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小时内删除。
发表评论