《算法与程序设计》练习
(满分:100分)
说明:本卷分为第一卷和第二卷两部分。第一卷为客观题,含单选题和判断题,其中单选题30小题,共45分;判断题20小题,共20分。第二卷为操作题,共3题,第1题15分,第2题10分,第3题10分,共35分。
一、单选题
1、(1.5分)下面是4位同学为解决问题编写的程序,完全正确的是( )。
同学1:某同学从17岁开始栽了1棵树,以后每年都比前一年多栽1棵,他要栽够100棵树,最小得多少岁?程序如下:
Private Sub Command1_Click( )
Dim Age As Integer,Tree As Integer
Private Sub Command1_Click( )
Dim Age As Integer,Tree As Integer
Do
Age=17
Age=Age+1
Tree=Tree+Age(Tree应该是树的累加数,这样合适吗?)
Loop Until Tree=100
Print Age & “岁”
End Sub
Age=17
Age=Age+1
Tree=Tree+Age(Tree应该是树的累加数,这样合适吗?)
Loop Until Tree=100
Print Age & “岁”
End Sub
同学2:计算S=1×2×3×4×5×6×7×8×9的值。程序如下:
Private Sub Command1_Click( )
Dim S As Integer
(S没有初始值,默认为0)
Private Sub Command1_Click( )
Dim S As Integer
(S没有初始值,默认为0)
For a = 1 To 10(终值设置错误)
S = S * a
Next a
S = S * a
Next a
Print “S=” & S
End Sub
End Sub
同学3:求解方程ax+b=0。程序如下:
Private Sub Command1_Click( )
Dim A As Single,B As Single
InputBox("A=")(从键盘得到的数据赋给谁了?)
InputBox("B=")
X=-B/A
Print X
End Sub
Private Sub Command1_Click( )
Dim A As Single,B As Single
InputBox("A=")(从键盘得到的数据赋给谁了?)
InputBox("B=")
X=-B/A
Print X
End Sub
同学4:计算S=1+(1+2)+(1+2+3)+…+(1+2+3+…+100)的值。程序如下:
Private Sub Command1_Click()
Dim i As Integer,T As Long,S As Long
S=0:T=0
Private Sub Command1_Click()
Dim i As Integer,T As Long,S As Long
S=0:T=0
For i=1 to 100
T=T+i(T的值为:1+2+3+……n)
S=S+T
Next I
Print "S="; S
End Sub
T=T+i(T的值为:1+2+3+……n)
S=S+T
Next I
Print "S="; S
End Sub
A、同学1 B、同学2 C、同学3 D、同学4
2、(1.5分)
下面的4个VB程序段能使变量a、b、c的值全部相同的是( )。
程序一:
a=1:b=2:c=3
a=b
a=1:b=2:c=3
a=b
b=c
c=a
c=a
程序二:
a=1:b=2:c=3
c=a
c=b
c=c
a=1:b=2:c=3
c=a
c=b
c=c
程序三:
a=1:b=2:c=3
c=a
b=c
a=1:b=2:c=3
c=a
b=c
程序四:
a=1:b=2:c=3
c=a=b
a=1:b=2:c=3
c=a=b
vb程序设计简单吗 A、程序一 B、程序二 C、程序三 D、程序四
3、(1.5分)
如果要改变窗体的标题,则需要设置的属性是( )
A、Caption B、名称 C、Font D、Visible
A、Caption B、名称 C、Font D、Visible
4、(1.5分)
已知数组D的1到N号元素已经赋入常数值,下面4个程序段都把这N个常数值输出,其中不能保证输出的数据是由小到大的程序段是哪个?( )。
程序一:
for i=1 to n-1
Min=D(i):M=i
for i=1 to n-1
Min=D(i):M=i
for j=i+1 to n
if D(j)<Min then Min=D(j):M=j
Next j
k=D(i):D(i)=Min:D(M)=k
Next I
for i=1 to N
print D(i);
Next i
if D(j)<Min then Min=D(j):M=j
Next j
k=D(i):D(i)=Min:D(M)=k
Next I
for i=1 to N
print D(i);
Next i
程序二:
For i = 1 To n - 1
For j = n To i + 1 Step -1
If d(j) < d(j - 1) Then M = d(j): d(j) = d(j - 1): d(j - 1) = M
Next j
Next i
for i=1 to N
For i = 1 To n - 1
For j = n To i + 1 Step -1
If d(j) < d(j - 1) Then M = d(j): d(j) = d(j - 1): d(j - 1) = M
Next j
Next i
for i=1 to N
print D(i);
Next i
Next i
程序三:
for i=1 to n-1
for j=i+1 to n
if D(j)<D(i) then M=D(j):D(j)=D(i):D(i)=M
Next j
Next i
for i=1 to N
print D(i);
Next i
for i=1 to n-1
for j=i+1 to n
if D(j)<D(i) then M=D(j):D(j)=D(i):D(i)=M
Next j
Next i
for i=1 to N
print D(i);
Next i
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论