- 2021-04-14 发布 |
- 37.5 KB |
- 6页
申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
文档介绍
高考算法与程序设计试题及答案
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查看更多
相关文章
- 当前文档收益归属上传用户
- 下载本文档