16、Dim sum as long Dim i as long sum=0 i=0
Do while sum <10 i=i+1
sum=sum+i*i loop
print sum
运行结果: 14
解析:sum=0,i=0,sum<10 yes
①i=i+1=1,sum=sum+i*i=0+1=1,sum<10 yes; ②i=i+1=2,sum=sum+i*i=1+2*2=5,sum<10 yes;
③i=i+1=3,sum=sum+i*i=5+3*3=14,sum<10 no, print sum=14
17.阅读下列流程图,写出结果(7分)
当输入x=1时,输出n的值是 3 。
解析:输入x=1,n=0 ①x2-4x+3=1-4+3=0≤0 yes x=x+1=1+1=2,n=n+1=0+1=1 ②x2-4x+3=4-8+3=-1≤0 yes
第 2 9 页
x=x+1=2+1=3,n=n+1=1+1=2 ③x2-4x+3=9-12+3=0≤0 yes x=x+1=3+1=4,n=n+1=2+1=3 ④x2-4x+3=16-16+3=3≤0 no 输出n=3
18.分析完善程序,以下是计算s=l-2+3-4+5-……+9-100的VB程序代码,请补全程序。(8分) Dim s As Integer Dim i As Integer s = 0
For i = 1 To 100
If i mod 2 =1 Then
s = s+i Else
s = s-i End If Next i
Print \
解析:i的取值是从1到100。
①当i是奇数,即1、3、5、...、99,i不能被2整除(i mod 2 = 1),此时s=s+i ②当i是偶数,即2、4、6、...、100,i能被2整除(i mod 2 = 0),此时s=s-i
19.算法实现与程序设计(求 s=3+6+9+…+300的值)
解决该问题,可以采用如下两种不同的方法:(共8分,每空4分)
方法一 方法二 第 3 0 页
Dim s As Integer Dim i As Integer s=0 For i = 3 to 300 step 3 s = s + ① Next i Print s Dim s As Integer Dim i As Integer s=0 For i = 1 to 100 s = s + ② Next i Print s 请补充完成上述程序:① i ;② 3*i 。
20.阅读下列程序,写出运行结果(数组a(i)问题7分) Dim a(10) As Integer Dim i As Integer Dim S As Integer For i = 1 To 5
a(i) = i * i Next i
S = a(3) + a(4) Print S
上述程序运行后,输出的结果是 25 。
解析:i的取值是从1到5,
a(1)=1*1=1,a(2)=2*2=4,a(3)=9,a(4)=16,a(5)=25;s=a(3)+a(4)=9+16=25。
21.阅读下列程序,写出运行结果 Dim i as integer Dim s as integer Dim n as integer n=30 s=0
For i=2 to n-1
If n mod i = 0 then s=s+i Next i Print s
第 3 1 页
程序运行后输出s的值是 41 。
解析:n=30,i的取值是从2到29,n mod i=0,本题即是30这个数能被2,3,4,...,29这些数中整除的数之和,即2+3+5+6+10+15=41。
22.分析完善程序(8分),学校举行校园歌手大赛,评委由6人组成,评分方法:去掉一个最高分和一个最低分,计算其余4位评委的平均分,作为选手的最终得分。
图1
[算法设计]
max 记录最高分 min 记录最低分
s 记录六位评委的总分 aver 记录最终得分
第1步:从文本框中分别读入6位评委的打分并依次存入到a(1)到a(6)中; 第2步:将第一位评委的打分a(1)分别赋给最高分max,最低分min和总分s; 第3步:利用循环结构把另外5位评委的打分累加给s从而求出6位评委的总分s,同时把5位评委的打分与max与min进行比较,得出6位评委中的最高分max和最低分min;
第4步:从总分s中去掉最高分max和最低分min,求出其他四位评委的平均分aver作为选手的最终得分。
(1)再设计界面过程中,窗体中录入评委打分的对象是下图中哪个控件生成的? 2 (填写编号: 1/2/3/4)
5 第 3 2 页 6