2019山东省信息技术合格考复习题算法模块(历年真题) 下载本文

p = ( a+b+c )/ 2

s = Sqr(p*(p-a)*(p-b)*(p-c))

text4.text = format(s,”0.00”) ‘结果保留两位小数

Else

text4.text = “No Answer!” End If

根据上述回答下列问题:(8分,每空4分)

(1)利用海伦公式求三角形面积的算法是 (填:解析法/枚举法/排序法/查找法)

(2)填写处参考程序中空白处的表达式 (填写字母:A/B/C/D)。 A. a+b>c or a+c>b and b+c>a B. a+b>c or a+c>b or b+c>a C. a+b>c and a+c>b or b+c>a D. a+b>c and a+c>b and b+c>a

信息技术合格考复习题 算法(三)

一、选择题

1.下列表达式能判断正整数x是偶数的是( )。

A. x mod 2 = 1 B. x\\2 = 0 C. x mod 2 <> 0 D. x mod 2 = 0 2.下列程序段运行后,s的值是( )

S=0

For i=2 to 10 s=s+i

Next i

A.53 B.54 C.10 D.55 3.下列语句属于三种结构中的哪一种( ) x=100

if x < 0 then y= abs(x) else

y= sqr( x) end if 它属于 ( )

A.顺序结构 B. 选择结构 C. 循环结构 D.其他三项都是

333

4.水仙花是三位整数,其各位数字立方和等于该数本身,如153=1+5+3,如果要求出所有的水仙花,下列算法最合适的是( )

A.解析法 B.枚举法 C.查找法 D.排序法 5.下列变量正确的是( )

A. dim for as double B. dim abc as integer C. dim 4ac as Boolean D. dim a*c as string

二、操作题

1.阅读下列程序,写出运行结果

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

上述程序运行后,变量s的值是 2.算法设计与程序实现

假设我国目前人口数为13亿,如果每年增长率为1.2&。 编写程序,计算多少年后我国人口数超过20亿。 【算法分析】

n

设n年后,我国人口数超过20亿。根据题意得出数学关系式:13*(1+1.2%)>20。 求最小的n。 【参考程序】

Dim p as single Dim r as single Dim n as integer p=13 r=0.012 n=0

Do while _________ n = n+1 p = p*(1+r)

Loop

Print n ; “年后” ; “人口超过” ; p

根据上述回答下列问题:(8分,每空4分)

(1)本题采用的算法是 ____ ______(填写:解析法/枚举法/排序法/递归法)。 (2)写出参考程序中空白处表达式 ___ _______________。 3.算法设计与程序实现(8分)求 s=3+6+9+…+300的值. 解决该问题,可以采用如下两种不同的方法:

方法1: Dim s As Integer Dim i As Integer s=0 For I = 3 to 300 step 3 s = s + ① Next i Print s 方法2: Dim s As Integer Dim i As Integer s=0 For I = 1 to 100 s = s + ② Next i Print s 请补充完成上述程序:①_______;②____________

信息技术合格考复习题 算法(四)

一、选择题

1.在VB语言中,下列合法的变量名是( ) A. x*y B. xy C. x/y D.do

2. 已知在VB 语言中,Int(x)函数的功能是返回不大于x的最大整数,Fix(x)函数的功能是返回x的整数部分,则表达式int(2.88)+fix(-3.89)的值是( )。 A.1 B.01 C.-1 D.都不是 3.下列问题适合用解析法求解的是( )

A.一个小球从100米高的楼顶坐自由落体运动,求落地时的速度V B.输出1000以内所有的完全平方数 C.在一组彩球中寻找出所有的红球 D.将全班同学根据身高从高到矮排队

2

4.一元二次方程判别式b-4ac的VB表达式正确的是( )

2

A. b*b-4*a*c B. b*b-4ac C. b-4ac D.b^2-4*ac 5.下列程序段运行后,s的值是( ) s=0

For i=2 to 10 s=s+i Next i

A.53 B.54 C.10 D.55 二、操作题

1.算法设计与程序实现

以下是计算s=1-2+3-4+5……+99-100程序代码,请补全程序。(8分)

Dim S as integer Dim i as integer s=0

For i =1 to 100 If i mod 2 = 1 then s=____________ Else

s=_____________ End if Next i

Print “S=”;S

2.算法设计与程序实现

一张单据上有一个4位数的号码8□□0,其中百位和十位上的数字已看不清楚了,但知道该4位数既能被23整除,也能被37整除。 请编写程序求出该单据号码。 【算法设计】

设百位数为x,十位数字为y:x 和 y的范围都是0到9

4位数:8xy0=8*1000+x*100+y*10

列举□□里的两个数字的所有可能的情况: 00,01,02,03,04,05,06,07,08,09, 10,11,12,13,14,15,16,17,18,19 ……

90,91,92,93,94,95,96,97,98,99 逐一判断找出符合条件的数字。 【参考程序】

Dim x As Long Dim y As Long Dim n As Long For x=0 to 9 For y=0 to 9

n=8*1000+x*100+y*10 If _____________ then

Print n

End If Next y

Next x

根据上述回答下列问题:(共8分:第一题3分;第二题2分;第三题3分) (1)解决该问题采用的算法是_ __(填写:解析法/枚举法/排序法/递归法)。 (2)根据题意,程序中空白处应填写:______(填写字母:A/B/C/D)。 A. n mod 23 = 0 or n mod 37 = 开始 B. n \\ 23 = 0 and n \\ 37 = 0 C. n \\ 23 = 0 or n \\ 37 = 0

输入x D. n mod 23 = 0 and n mod 37 = 0 (3)根据算法设计,参考程序中循环体 中的语句“n=8*1000+x*100+y*10”,

n=0 一共重复了多少次?________________。

3.阅读右侧流程图,写出结果(4分)

N X2-4x+3≤0 当输入x=1时,输出n的值=_______

Y

x=x+1

n=n+1 输出n

结束

信息技术合格考复习题 算法(五)