上海市同济中学高一下学期期中考试信息科技试题.docx
《上海市同济中学高一下学期期中考试信息科技试题.docx》由会员分享,可在线阅读,更多相关《上海市同济中学高一下学期期中考试信息科技试题.docx(17页珍藏版)》请在冰点文库上搜索。
上海市同济中学高一下学期期中考试信息科技试题
同济中学2016学年度第二学期高一期中测试
信息科技试卷(2017.04)
(时间60分钟,满分100分)
一、单项选择题(每题2分,共64分)
1.下列关于算法说法错误的是()
A.利用计算机解决问题的过程一般是:
分析问题→设计算法→编写程序→运行程序
B.算法可以用自然语言、流程图或程序代码描述
C.算法的步骤必须是有限的。
D.算法就是计算的方法。
2.用流程图表达条件“c=0”,要用到以下哪个框?
()
A.B.C.D.
3.如果a=true,b=false,c=true,d=false,以下逻辑表达式的值为false的个数是( )
1aandb ②aorb ③aandcornotd ④not(aandc)ord
A.1个B.2个C.3个D.4个
4.以下合法的变量名是()
A.A-BB.forC.a_1D.4S
5.表达式Abs(-16)+15Mod13\5的值是()
A.17B.5C.16D.16.4
6.下列用流程图描述的算法中,正确的是()
A.图1B.图2C.图3D.图4
7.“如果变量a,b的值中任意一个为0,那么y=y+1”,能实现该功能的VB语句是( )
A.Ifa=0Andb=0Theny=y+1B.Ifa*b=0Theny=y+1
C.Ifa=0,b=0Theny=y+1D.Ifa-b=aTheny=y+1
8.下列语句中的等于“=”作用与其他选项不同的是()
A.ifa=0thenB.dowhilex=0
C.forx=0to5D.ifnmod3=0then
9.在如下VisualBasic程序段中,要使循环体t=t*j执行5次,循环变量的终值可以是( )
Forj=1To__________Step2
t=t*j
Nextj
A.-5B.0C.5D.10
10.
下图是当循环、直到循环两种循环结构,请结合下图选择下列说法中正确的是()
A.当循环是当条件成立退出循环
B.当循环不可能出现不执行循环步骤的情况
C.直到循环是条件成立时执行循环步骤
D.直到循环至少执行一次循环步骤
11.设计一个含有循环结构的算法,若要确保循环的次数为10次,下列设计中不能达到该目的的流程图个数为()
A.1B.2C.3D.4
12.为了求数列12+32+52+72+……+992的和,以下说法错误的是()。
A.求和通常采用累加器逐个累加,这题要重复累加50次。
B.这个问题通过循环结构解决。
C.在VisualBasic中只能用dowhile/loop语句编程解决这个问题。
D.解决这个问题的算法不需要输入。
13.以下关于算法基本结构嵌套的叙述中,正确的有( )
1分支结构可以嵌套分支结构②分支结构可以嵌套循环结构
③循环结构可以嵌套分支结构④循环结构可以嵌套循环结构
A.4个B.3个C.2个D.1个
14.下列流程图属于双重循环结构的是()。
A.图①B.图②C.图③D.图④
15.以下只能用解析算法求解的是()
A.已知边长a、b、c,求三角形面积。
B.求用10元、20元和50元三种纸币组合支付360元的不同方案。
C.求2000以内的素数。
D.求所有的水仙花数的总和。
16.关于枚举算法的说法错误的是( )
A.一般是通过循环中嵌套分支结构来实现的。
B.循环结构用来“枚举”,分支结构用于“检验”。
C.列举所有可能解的范围时,可以扩大但不能缩小,以防漏解。
D.采用枚举法时,也可能找不到符合条件的解。
17.数组a中存放了一批数据如下表,现采用对分查找方式在这批数据中查找“gou”,以下说法正确的是()。
a
(1)
a
(2)
a(3)
a(4)
a(5)
a(6)
a(7)
hou
ji
long
ma
niu
she
tu
A.依次被比较的数据是“ma”,“ji”,“hou”
B.依次被比较的数据是“ma”,“she”,“tu”
C.无法进行对分查找,因为这批数据还没排好序
D.无法进行查找操作,因为这批数据中没有“gou”
18.在VisualBasic中,要定义一个一维数组name,用于存储10位学生姓名信息,则正确的数组定义语句是()
A.Dimname(1To10)AsIntegerB.Dimname(1,10)AsInteger
C.Dimname(1,10)AsStringD.Dimname(1To10)AsString
19.如下算法的功能是:
寻找数组元素a
(1)到a(10)中的最小值。
处应填写的语句是()
①
Fori=2to10
Ifa(i)min=a(i)
endif
Nexti
A.a
(1)=minB.a
(1)=0C.min=0D.min=a
(1)
20.如下算法的执行结果是()
A.30B.50C.20D.-20
21.如下算法的执行结果是()
A、212B、122C、14D、无法比较
22.若输入9,如下算法的执行结果是()
A.3B.9C.81D.4
23.如下算法的执行结果是()
A.8B.14C.18D.20
24.如下程序在调试时出现了如图所示的出错信息,该程序段出错的原因是缺少了()
m=0:
n=0
Fori=1to100
Ifimod3=0then
m=m+1
Else
n=n+1
nexti
printm,n
A.ForB.EndifC.NextD.If
25.若输入3、5、-2、3、-6、0,则输出结果是( )
A.0,0
B.3,-2
C.11,-8
D.3,0
26.如下流程图的功能是给数组a赋值,使a
(1)=1,a
(2)=3,a(3)=5,…,a(50)=99,在流程图的空白处应填入( )
A.a(i)=2*i+1
B.a(i)=2*(i+1)
C.a(i)=i+2
D.a(i)=2*i-1
27.如下程序的运行结果是( )
x=7
ifx>10then
y=x*2+2
else
ifx<=5then
y=x*3
else
y=4-x/7
endif
endif
printy
A.16B.21C.3D.-21
28.如下程序的运行结果是( )
s=0
n=1
dowhilen<10
s=s+n
n=n+3
loop
prints,n
A.1210
B.127
C.2210
D.227
29.为使下面两段VisualBasic程序能实现相同的功能,左框内划线处的内容为()
a=val(inputbox(“”))
b=val(inputbox(“”))
x=a
a=b
b=x
printa,b
a=val(inputbox(“”))
b=val(inputbox(“”))
a=a+b
________
a=a-b
printa,b
A.b=a+bB.a=b–aC.b=b-aD.b=a-b
30.为使两段程序能实现相同的功能,左框内划线处的内容为()
x=val(inputbox(“”))
a=int(x/100)
b=int((xmod100)/10)
c=xmod10
x=c*100+b*10+a
printx
x=val(inputbox(“”))
a=x\100
_________________
c=xmod10
x=c*100+b*10+a
printx
A.b=x\10Mod10B.b=(x-a*100)/10
C.b=(x-a*100)/10D.b=Int((x-a*100-c)/10)
31.为使下面两段程序能实现相同的功能,右框内划线处的内容为()
s=0
Fori=1to10
x=inputbox(“x=”)
s=s+x
Nexti
Prints
s=0
t=1
Dowhile__________
x=inputbox(“x=”)
s=s+x
t=t+2
loop
prints
A.t<=10B.t=20C.t<19D.t<20
32.为使下面两段程序能实现相同的功能,右框内划线处的内容为()
s=0
Fori=1to30
s=s+2^i
Nexti
Prints
s=0
a=1
fori=1to30
___________
s=s+a
nexti
prints
A.a=a+1B.a=a+2C.a=i^2D.a=a*2
二、填空题(每格3分,共9分)
33.以下是两位同学设计的描述“输出所有能被3整除的四位数”的流程图。
(1)请将流程图的空缺填写完整①_____________②_____________
(2)请问采用枚举算法描述的是。
(从下列选项中选择)
图B
A.图AB.图BC.都是D.都不是
三、程序拼装题(4分)
34.如下VB代码要实现的功能是:
求
。
请在下列10条语句中选取5条拼接成一段完整的程序。
(注意:
每条语句最多使用一次;答题时只要将选取语句的标号按执行先后排列即可)
Dimsassingle,iasinteger
(1)Fori=2to256step2
(2)Fori=1to8step1
(3)S=0
(4)S=3
(5)i=i+1
(6)nexti
(7)loop
(8)s=s+1/i
(9)s=s+1/2^i
(10)prints
选取的语句标号序列是:
____、____、____、____、____。
四、程序改错题(每题3分,共15分)
35.小明根据如下流程图编写了VB程序,但运行时提示有错,请找出程序中的5个错误,并改正。
Dimsasinteger,jasinteger,nasinteger
1s=0,j=1,n=0
2Ifj<=10
3InputBox(x)
4Ifx>0then
5s=s+x
6n=n+1
7Else
8j=j+1
9Loop
Prints
(1)错误语句的编号是_______。
(1分)
(2)修改为___________________________。
(2分)
(2)错误语句的编号是_______。
(1分)
(2)修改为___________________________。
(2分)
(3)错误语句的编号是_______。
(1分)
(2)修改为___________________________。
(2分)
(4)错误语句的编号是_______。
(1分)
(2)修改为___________________________。
(2分)
(5)错误语句的编号是_______。
(1分)
(2)修改为___________________________。
(2分)
五、编写程序题(8分)
36.求满足首尾两个数字相等的所有四位正整数之和。
(1)写出能表示“一个四位正整数X的千位数字和个位数字相等”的VB表达式(2分)
_______________________________________________________________
(2)将下列程序填写完整,求所有满足上述条件的四位正整数之和(6分)
Dimxasinteger,p1asinteger,p2asinteger,saslong
S=0
Print“s=”;s
同济中学2016学年度第二学期高一期中测试
信息科技试卷标准答案(2017.04)
(时间60分钟,满分100分)
题号
单项选择题
填空~编程题
总分
得分
一、单项选择题(每题2分,共64分)
0
1
2
3
4
5
6
7
8
9
0
D
A
B
C
A
B
B
C
D
1
D
B
C
A
C
A
C
A
D
D
2
B
B
A
C
B
C
D
C
A
D
3
A
D
D
二、填空题(每格3分,共9分)
33.
(1)请将流程图的空缺填写完整
①i=i+3②_i=i+1__。
(2)请问采用枚举算法描述的是B。
(从下列选项中选择)
A.图AB.图BC.都是D.都不是
三、程序拼装题(4分)
34.选取的语句标号序列是:
__4__、__2__、__9__、__6__、__10__。
四、程序改错题(每题3分,共15分)
35.
(1)错误语句的编号是①。
(1分)
(2)修改为s=0:
j=1:
n=0。
(2分)
(2)错误语句的编号是②。
(1分)
(2)修改为dowhilej<=10。
(2分)
(3)错误语句的编号是③。
(1分)
(2)修改为x=inputbox(“”)。
(2分)
(4)错误语句的编号是⑦。
(1分)
(2)修改为endif。
(2分)
(5)错误语句的编号是
。
(1分)
(2)修改为printn。
(2分)
五、编写程序题(8分)
37.求满足首尾两个数字相等的所有四位正整数之和。
(1)写出能表示“一个四位正整数X的千位数字和个位数字相等”的VB表达式(2分)
x\1000=xmod10
(2)将下列程序填写完整,求所有满足上述条件的四位正整数之和(6分)
Dimxasinteger,p1asinteger,p2asinteger,saslong
或
X=1000
Dowhilex<=9999
Ifx\1000=xmod10then
s=s+x
endif
x=x+1
loop
S=0
Forx=1000to9999
Ifx\1000=xmod10then
s=s+x
endif
nextx
Print“s=”;s