高考算法与程序设计试题及答案

申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

文档介绍

高考算法与程序设计试题及答案

A.算法与程序设计 一、选择题(本大题共17小题,每题2分,共34分)‎ ‎1.下列问题不能用算法描述的是 A.已知a、b、c的值,求一元二次方程ax2+bx+c=0(a≠0)的实数解 B.计算某个班级英语成绩的平均分 C.列出方程y=2x+1的所有实数解 D.根据矩形的长和宽求面积 ‎2.下列可以作为VB变量名的是 A. A&s B. A+S C. AS D. A_s ‎3.将数学表达式写成VB表达式正确的是 A.(y – Int(x))/x*x B.(y – Abs(x))/x^2‎ C.(y – Int(x))/x^2 D.(y – Abs(x))/ x*x ‎4. 某宾涫的房间号由5位字符组成(例如A0823表示A幢8层23号房间)末位数字为奇数时表示房间朝南,为偶数时表示房间朝北,字符串变量s中存储了1个房间号,下列能正确判断房间朝南的VB表达式是 A.Val(Mid(s,5,1))Mod 2 = 1 B. Val(Mid(s,5,1))Mod 2 = 0‎ C. Val(Mid(s,5,1)) 2 = 1 D. Val(Mid(s,5,1)) 2 = 0‎ ‎5.下列VB表达式中:①Sin(x) ②Text1.Text ③Label1.Caption ④Chr(x) ⑤Asc(x)‎ 值为字符串型的是 A. ①③⑤ B. ①②③ C. ②④⑤ D. ②③④‎ ‎6.下列能准确表达“如果明天不下雨,那久我们骑车去郊游”的伪代码是 ‎ A.lf(明天下雨)Then(我们骑求去郊游)‎ ‎ B.If(明天不下雨)Then(我们骑车去郊游)Else(我们不去郊游)‎ ‎ C,If(明天下雨)Then(我们不去郊游)Else(我们骑车去郊游)‎ ‎ D.lf(明天不下雨)Then(我们骑车去郊游)‎ ‎7.寻找数组元素a(1)到a(10)中最小值min程序段如 For i = 2 To 10‎ ‎ If a(i)< min Then min = a(i)‎ Next i 方框中最合适的语句是 A. a(1)= min B. a(1)= ‎0 ‎‎ ‎ C. min = a(1) D. min = 0‎ ‎8.某VB的事件过程如下:‎ Private Sub Command1_Click()‎ ‎ Dim a As Integer ‎ a = Val(Text1.Text)‎ ‎ a = 2 * a + 1‎ ‎ Text1.Text = Str(a)‎ End Sub 程序运行时,在文本框Text1中输入1,连续两次单击命令按钮Command1后,Text1中显示的内容是 A. 7 B‎.5 ‎ C. 3 D. 1‎ ‎9.对数组元素a(1)到a(8)进行排序,其排序算法的VB部分程序段如下:‎ For m = 1 To 7‎ ‎ p = m ‎ For n = m + 1 To 8‎ ‎ ‎ ‎ Next n ‎ If p <> m Then t = a(p): a(p) = a(m): a(m) = t Next m 方框中的语句是 A. If a(n) < a(p) Then p = m B. If a(n) < a(p) Then p = n C. If a(n) > a(p) Then p = n D. If a(n) > a(p) Then p = m ‎10.有如下VB程序段:‎ Dim i As Integer, c As String, s As String, t As String s = "2012 Hero": t = ""‎ For i = 1 To Len(s)‎ c = Mid(s, i, 1)‎ If c >= "a" And c <= "z" Then t = t + c Next i Text1.Text = t 程序运行后,文本框Text1中显示的内容是 A. 2012 B.Hero C. ero D. 2012 H ‎11.下列能表示矩形、圆、椭圆等形状的控件是 A. 标签 B.简单图形 C. 文本框 D. 命令按钮 ‎12.一个VB工程的部分设计界面如右图所示。下列说法:‎ ‎①工程文件名是“工程1.vbp” ‎ ‎②该工程只有1个窗体 ‎ ‎③窗体文件名是“MyForm” ‎ ‎④窗体名称是“对象识别”‎ A. ①② B. ②③‎ C. ①③ D. ②④‎ ‎13.有两组数据:‎ ‎①54,31,43,12,8,73,56,34,89,60,23,67‎ ‎②87,83,75,70,63,59,55,37,33,21,17,7‎ 下列有关查找方法描述不正确的是 A. ①可以直接使用顺序查找 B. ②可以直接使用对分查找 C. ①可以直接使用对分查找 D. ②可以直接使用顺序查找 二、综合题:本大题5小题,其中第14小题2分,第15题4分,第16题5分,第17题4分,第18题4分,共19分。‎ ‎14.下列VB程序运行时,在文本框Text1中输入10,单击命令按钮Command1后,文本框 Text2中显示的内容是 。‎ Private Sub Command1_Click()‎ Dim x As Single, a As Integer, b As Integer a = Val(Text1.Text)‎ x = Sqr(a)‎ b = Int(x)‎ Text2.Text = Str(a + b)‎ End Sub ‎15.下列VB程序运行时,单击命令按钮Command1后,文本框Text1中显示的内容是 (1) ,文本框Text2中显示的内容是 (2) 。‎ Private Sub Command1_Click()‎ Const n = 4‎ Dim a(1 To n) As Integer, s As Integer Dim i As Integer, t As Integer, k As Integer a(1) = 1: a(2) = 2: a(3) = a(1): a(4) = 0‎ s = 0: k = 0‎ For i = 1 To n ‎ t = a(i)‎ ‎ a(i) = k + t ‎ k = t ‎ s = s + a(i)‎ Next i Text1.Text = Str(a(2))‎ Text2.Text = Str(s)‎ End Sub ‎16.现要求编写VB程序实现如下功能:分别在文本框Text1、Text2和Text3中输入三条线段的长度,单击“判断”按钮Command1后,在标签Label1中显示判断结果。程序运行界面如右图所示。按此要求编写的程序如下:‎ Private Sub Command1_Click()‎ Dim a As Single, b As Single Dim c As Single, st As String a = Val(Text1.Text)‎ b = Val(Text2.Text)‎ c = Val(Text3.Text)‎ If Not (a + b > c And b + c > a And c + a > b) Then ‎ st = "这三条线不能构成一个三角形"‎ ElseIf a * a + b * b = c * c Or a * a + c * c = b * b Or b * b + c * c = a * a Then ‎ st = "可以构成一个直角三角形"‎ ElseIf ① Then ‎ st = "可以构成一个等边三角形"‎ Else ‎ st = "可以构成一个不等边斜三角形"‎ End If Label1.Caption = ② ‎ End Sub ‎(1)请在划线处填入合适代码 ‎(2)下列表达式与“Not (a + b > c And b + c > a And c + a > b)”等价的是 (填字母)。‎ A. a + b <= c Or b + c <= a Or c + a <= b B. a - b <= c And b - c <= a And c - a <= b C. a + b <= c And b + c <= a And c + a <= b ‎17.在一行数据(1,23,6,2,4,5,6,18,5,19)中,存在连续递增的数据序列(1,23)、(6)、(2,4,5,6,18)、(5,19),其序列长度分别为2、1、5、2,则连续递增的数据序列长度最大值max=5。寻找max的方法如下:从第二个数据开始,将该数与它的前一个数比较,如果该数大于它的前一个数,则k←k+1,否则k←1,……;直到最后一个数据处理完成为止。在此过程中将k的最大值保存在变量max中。依据上述算法描述编写的VB程序如下,但加框处代码有错,请改正。‎ Const n = 10‎ Dim a(1 To n) As Integer ‎'Text1_KeyPress 过程用于输入数据并将数据依次存放到数组a中 Private Sub Text1_KeyPress(KeyAscii As Integer)‎ ‎'该过程代码略 End Sub Private Sub Command1_Click()‎ Dim i As Integer Dim k As Integer '连续递增的数据序列长度 Dim max As Integer '连续递增的数据序列长度最大值 max = 1‎ k = 1‎ For i = 2 To n ‎ If a(i) > a(i + 1) Then k = k + 1 Else k = 1 '(1)‎ ‎ If k > max Then k = max '(2)‎ Next i Text2.Text = Str(max)‎ End Sub ‎18.三次函数的图像如下图所示。‎ ‎ 从图像中观察得到,在[0,4]区间内,分别存在一个局部极大点P(在P附近的函数值都小于f(P))和局部极小点Q(在Q附近的函数值都大于f(Q))。寻找P和Q近似值的方法如下:在[0,4]区间内,每隔e(e=0.001)取一个值逐一枚举,如果找到某个值x,能同时满足f(x)> f(x-e)和f(x)> f(x+e),在x可作为P的近似值;如果找到的某个值x,同满足f(x)< f(x-e)和f(x)< f(x+e),则x可作为Q的近似值。‎ 请仔细阅读和分析寻找P、Q近似值的方法和下列VB程序,在划线处填入合适代码,将下列程序补充完整。‎ ‎'函数f用于计算f(x)的值 Function f(x As Single) As Single ‎ f = (1) ‎ End Function Private Sub Command1_Click()‎ Const e = 0.001‎ Dim a As Single, b As Single, c As Single, x As Single a = f(-e): b = f(0)‎ For x = 0 To 4 Step e ‎ c = f(x + e)‎ ‎ If b > a And b > c Then ‎ Label1.Caption = "当x=" + Str(x) + "时,函数的极大值的近似值=" + Str(b)‎ ‎ End If ‎ If (2) Then ‎ Label2.Caption = "当x=" + Str(x) + "时,函数的极小值的近似值=" + Str(b)‎ ‎ End If ‎ a = b: b = c Next x End Sub 第Ⅱ卷  选考模块(共45分)‎ A.算法与程序设计 一、选择题:本大题13小题,每小题2分,共26分。‎ 题号 l ‎2‎ ‎3‎ ‎4‎ ‎5‎ ‎6‎ ‎7‎ ‎8‎ ‎9‎ ‎10‎ ‎11‎ ‎12‎ ‎13‎ 答案 C D B A D D C A B C B A C 二、综合题:本大题5小题,其中第14小题2分,第15小题4分,第16小题5分,第17小题4分,第18小题4分,共19分。‎ ‎  14. 13‎ ‎  15.(1) 3 (2)8‎ ‎  16.(1)①a=b And a=c(或者等价表达式) ②st (2)A ‎17. (l)a(i-l) (2)max = k ‎18. (l)x*x*x/3-2*x*x+3*x-2 (2)b
查看更多