当前位置:首页 >> 能源/化工 >>

算法与程序设计选修模块综合评价试题

《算法与程序设计》选修模块综合评价试题 算法与程序设计》 (2005— 学年度第二学期) (2005—2006 学年度第二学期) 大题, 分钟。 本试卷分 3 大题,共 100 分。考试时间为 60 分钟。 一、单选题(每题 2 分,共 40 分) 单选题( 1、流程图中表示判断框的是( A、矩形框 B、菱形框 )。 C、圆形框 D、椭圆形框 )。 C、上车过程 D、下

2、由“上车—掏钱—投币”所描述的问题是( A、无人售票车投币过程 车过程 B、乘公交车过程

3、下列给出的赋值语句中正确的是( A、4 = M B、-M =M C、B=A-3

)。 D、x + y = 0

4、下列 Visual Basic 中,下列( A、int(4.1) B、Int(4.9)

)的表达式的值不等于 4。 C、Abs(int(-3.9)) D、Abs(int(-4.5))

5、下列 Visual Basic 中,下列( A、Integer B、Single

)类型属于字符串型。 D、Boolean )用于注释语句。

C、String

6、下列 Visual Basic 中,下列关键字( A、Rem B、End C、Else D、Loop

7、 假定 X 是一个数值型变量, 那么由函数组成的表达式 INT(X/2)=X/2 ( A、用于测试 X 是否偶数 B、返回一个整数 C、返回一个奇数 D、用于测试 X 是否整数 8、要改变新建对象的缺省名称,应使用属性( )。 A、 Font B、ForeColor C、Name D、Height

) 。

9、如果下面程序执行后输出的结果是 132,那么在程序 until 后面的“条件” 应为( )。 i=12:s=1

DO s= s * i 第 11 题 i = i-1 LOOP UNTIL “条件” PRINT END A、i > 11 B、i >=11 C、i <=11 D、i<11 ) 。 s

10、 给出以下一个算法的程序框图 (如图所示) 该程序框图的功能是 , ( A、求输出 a,b,c 三数的最大数 C、将 a,b,c 按从小到大排列 B、求输出 a,b,c 三数的最小数 D、 将 a,b,c 按从大到小排列

11、右边的程序框图(如图所示),能判断任意输入的数 x 的奇偶性: 其中判断框内的条件是( A、m=0 B、x=0 )。 C、x=1 D、m=1

12、要使一个命令按钮显示文字“确定”,正确的设置是把该命令的( )。 A、属性 Font 设置为“确定” B、属性.ForeColor 设置为“确定” C、属性 Caption 设置为“确定” D、属性 BorderStyle 设置为“确定” 13、表达式 Abs(-3.6)*sqr(100)的值是( )。 A、-360 B、360 C、-36 )。 D、36

14、下面程序运行后的输出结果为(

i=1
do WHILE i<8

i=i+2
s=2*i+3

loop PRINT END A、17 B、19 C、21 D、23 )。 s

15、下列 Visual Basic 程序段运行后,变量 a,b,c 的值为( a=1:b=1:c=1 Do While a+b+c<=10 a=a+1 b=b*2 c=b/2 Loop A、2 2 1 B、3 4 2 C、4 8 4 D、4 4 2 16、下列 Visual Basic 程序段运行后,变量 x 的值为( )。 x=3:y=77 Do x=x+2 Loop Until x>Sqr(y) A、7 B、8 C、9 D、10 17、下列 Visual Basic 程序段运行后,变量 s 的值为( a=2:b=1:s=0 For I=10 To 6 Step-1 s=s+a c=a+b a=b b=c Next I A、10 B、17 C、6 18、在 Visual Basic 中程序段是计算( s=0 For I=1 To 10 t=1 for j=1 to i t=t*I

)。

D、28 )公式的。

next j s=s+t Next I A、s=1+2+3+4+5+6+7+8+9+10
C、s=1!+2!+3!+4!+5!+6!+7!+8!+9!+10! s=1+2*3+3*4+4*5+5*6+6*7+7*8+8*9+9*10 D、

B、s=1*2*3*4*5*6*7*8*9*10

19、下列 Visual Basic 程序段运行后,变量 s、t 的值为( s=0:t=1 For k=2 To 4 s=s+k t=t*k Next k A、2 2 B、9 24

)。

C、5 6

D、0 1 )。

20、下列 Visual Basic 程序段运行后,变量 max 的值为( a=5:b=10:max=a IF b>max Then max =b A、5 B、10 C、5 和 10 二、填空题(每空 1.5 分,共 30 分) 填空题( 1、打印出如下图 1 222 33333 4444444 555555555 66666666666 程序如下: Private Sub Command1_Click() For i=1 to ____ print tab(20-i) For j=1 to ____ Print_____

D、以上都不是

Next j Print Next i End Sub 2、下列程序的功能是从键盘上任意输入一个数,判断这个数是正数、负数、还 是零,并输出判断结果。程序中有三处错误,请更正。 程序如下: Private Sub Command1_Click() Dim a As Single Dim py As String a=Val(Text1) If a>0 Then py="正数" If a=0 Then py="零" If a<=0 Then py="负数" Label3.Caption=a End Sub ①___________________②___________________________③_________________ _ 3、完善程序,使能输出:1-2+3-4+5-6+...+99-100 的值。 程序如下: Private Sub Command1_Click() s=_____ For i=1 To _____ s=s+((-1)^(______))*i Next i Print s End Sub 4、已知一元二次方程的二次项系数、一次项系数、常数项分别为 a、b、c,其 中 a 不等于 0。修改程序,求方程的根。要求:如果方程无实数根,则输出“无 实数根”,否则输出两个实数根。 Private Sub Command1_Click() Dim a,b,c,d As Single Dim x1,x2 As Single a=Val(Text1.Text) b=Val(Text2.Text) c=Val(Text3.Text) d=b^2-4*a*c If d________ Then x1=(-b+Sqr(d))/(2*a) x2=(-b-Sqr(d))/(2*a) Label1.Caption=x1 Label2.Caption=x2

_______ Label3.Caption=______ End If End Sub 5、下面的程序是求 7!(7!=1*2*3...*6*7)的值,并在默认窗口输出这个值。 程序中有三处错误,请更正。 Private Sub Command1_Click() Dim a As Single a=0 For i=1 to n a=a*i Next i Print i End Sub ①___________________②___________________________③_________________ _ 6、下面的程序是求 100 以内奇数和 s 的值(S=1+3+5+7...+99)。程序中有三处 错误,请更正。 Private Sub Command1_Click() Dim s As Single Dim i As Single s=1 For i=1 to 100 Step 1 s=s*i Next i Print s End Sub ①___________________②___________________________③_________________ _ 7、完善其中的程序,使能输出如下图形。 - - * * * * * * - - - - * * * * * * - - - - - - * * * * * * - - - - - - - - * * * * * * - - - - - - - - - - * * * * * * - - - - - - - - - - - - * * * * * * ---表示空格 程序如下: Private Sub Command1_Click() For i=1 To 6 Print Tab(______);

For j=1 To_______ Print "*" Next j Print Next i End Sub 三、简答题(每题 10 分,共 30 分) 答题( 1、已知一个三角形的三边长分别为 a,b,c ,求这个三角形的面积。设计一个算 法解决这个问题。(用自然语言描述并写出伪代码)

2、设计算法求 的值,要求画出程序框图,用基本语句编写的程序。

3、某电信部门规定:拨打市内电话时,如果通话时间不超过 3 分钟,则收取通 话费 0.2 元,如果通话时间超过 3 分钟,则超过部分以每分钟 0.1 元收取通话费 (通话不足 1 分钟时按 1 分钟计),试设计一个计算通话费用的算法。要求写出 算法,画出程序框图,编写程序。

《算法与程序设计》选修模块段考试题 算法与程序设计》选修模块段考试题 (2005— 学年度第二学期) (2005—2006 学年度第二学期) 答 案 卡 一、单选题(每题 2 分,共 40 分) 单选题( 1 11 2 12 3 13 4 14 5 15 6 16 7 17 8 18 9 19 10 20

二、填空题(每题 1.5 分,共 30 分) 填空题( 1、 ①___________________②___________________________③_________________ _

2、 ①___________________②___________________________③_________________ _ 3、 ①___________________②___________________________③_________________ _ 4、 ①___________________②___________________________③_________________ _ 5、 ①___________________②___________________________③_________________ _ 6、 ①___________________②___________________________③_________________ _ 7、①___________________②___________________________ 第二、 三、简答题(第一小题 6 分,第二、三小题各 12 分,共 30 分) 简答题( 1、已知一个三角形的三边长分别为 a,b,c ,求这个三角形的面积。设计一个算 法解决这个问题。(用自然语言描述并写出伪代码)

2、设计算法求 的值,要求画出程序框图,用基本语句编写的程序。

3、某电信部门规定:拨打市内电话时,如果通话时间不超过 3 分钟,则收取通 话费 0.2 元,如果通话时间超过 3 分钟,则超过部分以每分钟 0.1 元收取通话费 (通话不足 1 分钟时按 1 分钟计),试设计一个计算通话费用的算法。要求写出 算法,画出程序框图,编写程序。

《算法与程序设计》选修模块段考试题 算法与程序设计》 (2005— 学年度第二学期) (2005—2006 学年度第二学期) 参 考 答 案 一、单选题(每题 2 分,共 40 分) 单选题( 1 B 11 A 2 A 12 C 3 C 13 D 4 D 14 C 5 C 15 C 6 A 16 C 7 A 17 B 8 C 18 C 9 D 19 B 10 B 20 B

二、填空题(每题 1.5 分,共 30 分) 填空题( 1、6 i i a < =0 改为 a < 0

2、Val(Text1)改为 Val(Text1.Text)

Label3.Caption =a 改为 Label3.Caption = py 3、0 4、> 0 100 Else i + 1 "无实数根" n 改为 7 Print i 改为 Print a s = s * i 改为 s = s +

5、a = 0 改为 a = 1 6、s = 1 改为 s = 0 I 7、2*i 6

Step 1 改为 Step 2

第二、 三、简答题(第一小题 6 分,第二、三小题各 12 分,共 30 分) 简答题( 1、算法步骤如下: 第一步,输入 a,b,c 的值;第二步,计算 的值;第三步,计算 的值;第四步, 输出 S 的值. 伪代码: 2、解 这是一个累加求和问题,共 99 项相加,可设计一个计数变量,一个累加 变量,用循环结构实现这一算法.程序框图如右图所示

程序: S=0 K=1 Do s=s+1/k(k+1) k=k+1 LOOP UNTIL k>99 PRINT s END INPUT t THEN

IF t<= 3 c=0.2 ELSE

c=0.2+0.1(t-3) END IF

PRINT c END 3、解 我们用 c(单位:元)表示通话费,t(单位:分钟)表示通话时间, 则依题意有 算法步骤如下:第一步,输入通话时间 t;第二步,如果 t≤3,那么 c = 0.2 ; 否则令 c = 0.2+0.1 (t-3);第三步,输出通话费用 c ; 程序和流程图如右所示