时间120分钟,满分150分。
一、选择题(本大题共12个小题,每小题5分,共60分,在每小题给出的四个选项中只有一个是符合题目要求的)
1.下面进位制之间转化错误的是( )
A.101(2)=5(10) B.27(8)=212(3)
C.119(10)=315(6) D.31(4)=62(2)
[答案] D
[解析] 101(2)=1×22+0×2+1=5,故A对;27(8)=2×8+7=23,212(3)=2×32+1×3+2=23,故B对;315(6)=3×62+1×6+5=119,故C对;31(4)=3×4+1=13,62(2)=6×2+2=14.故D错.
2.下面赋值语句中错误的是( )
A.x=2 B.a+b=1
C.a=a+b D.s=s-2
[答案] B
3.利用秦九韶算法公式,计算多项式f(x)=3x4-x2+2x+1,当x=2时的函数值,则v3=( )
A.11 B.24 C.49 D.14
[答案] B
[解析] v0=a4=3,v1=v0x+a3=6,v2=v1x+a2=11,v3=v2x+a1=24.
4.求使1+2+3+…+n>100的最小整数n的值,下面算法语句正确的为( )
[答案] B
[解析] A中,由于n=n+1语句在S=S+n前面,故S加上的第一个数为2,不是1,故A错;C中不满足S≤100,跳出循环时,n的值只比符合要求的值大1,但语句n=n-2却减了2,故C中输出的n值是使1+2+…+n≤100成立的最大n值,故C错;D中条件S>100,由WHILE语句规则知条件不满足时,即跳出循环,故此程序中循环体一次也不执行,因此输出的n值为1,故D错,∴选B.
5.下列程序框图表示的算法运行后,输出的结果是( )
A.25 B.50 C.125 D.250
[答案] C
[解析] 由程序框图中的赋值语句S=S×5知,后一个S是前一个S的5倍,每循环一次S的值扩大为原来的5倍,由a初值为1,步长为1,到a>3结束循环,故循环了3次,∴S=1×53=125.
6.如图是一个算法的程序框图,若循环体只执行了一次,且输出的结果是,则其输入的x值为( )
A. B.
C.e D.e2
[答案] A
[分析] 知道输出的结果,求输入的x值,需要利用逆向思维才能准确解答,要充分利用条件x≤0.
[解析] ∵循环体只执行了一次,
∴输入的x>0,且执行赋值语句x=lnx后,应有x≤0,
∵输出结果为,∴ex=,∴x=-1,
∴lnx=-1,∴x=.故输出的x值为.我们也可以利用代入检验法排除B,C,D选项,从而得到A.
[点评] ∵只循环了一次,且条件为x≤0,∴x>0且lnx≤0,因此排除C、D,再结合输出结果为知x=.
7.用更相减损术求30和18的最大公约数时,第三次作的减法为( )
A.18-12=6 B.12-6=6
C.6-6=0 D.30-18=12
[答案] B
8.下面程序运行时,从键盘输入4,则输出结果为( )
A.4 B.8
C.15 D.2
[答案] C
[解析] 此程序语句表达的是分段函数f(x)=,从键盘输入x的值x0求函数值f(x0),
∴f(4)=42-1=15.
9.如图所示程序框图所表示的算法的功能是( )
A.计算1+++…+的值
B.计算1+++…+的值
C.计算1+++…+的值
D.计算1+++…+的值
[答案] C
[解析] n初值为1,由n=n+2知求的是奇数的倒数的和,由i>50时循环结束知,共加了50项,故最后一项为=.
10.计算机中常用的十六进制是逢16进1的计数制,采用数字0~9和字母A~F共16个计数符号,这些符号与十进制数的对应关系如下表:
例如,用十六进制表示:E+D=1B,则A×B(“×”表示通常的乘法运算)等于( ) A.6E B.72 C.5F D.B0 [答案] A [解析] 在十进制中,A×B=10×11=110.
∵110=16×6+14,
∴在十六进制中A×B=6E.故选A.
11.下列程序
运行结束时,i的值为( )
A.10 B.11
C.12 D.13
[答案] D
12.一个算法的程序框图如图所示,若该程序输出的结果为,则判断框中应填入的条件是( )
A.i<4 B.i<5
C.i≥5 D.i<6
[答案] D
[解析] 该算法是求+++…+的值,因输出结果为,则=++++,故填i<6.
二、填空题(本大题共4个小题,每小题4分,共16分,把正确答案填在题中横线上)
13.读程序回答问题.
INPUT n
i=1
sum=0
WHILE i<=n
sum=sum+i/(i+1)
i=i+1
WEND
PRINT sum
END
(1)若输入n=3,输出的结果为________.
(2)此程序对应的计算式子是________________.
[答案] (1) (2)+++…+
14.下面程序框图运行后,
(1)若*处表达式为S=2S+1,则输出结果为________.
(2)若输出结果为8,则处理框*处可填________.
[答案] (1)15 (2)S=2S
[解析] (1)∵S=2S+1,∴A=0循环后S=3;A=1循环后S=7;A=2循环后S=15,A=3不满足A<3跳出循环,输出S的值15.
(2)A从0变到2循环三次,设表达式为f(S),则有f(f(f(1)))=8,
∵23=8,∴可以填S=2S.(答案不惟一)
15.下面的程序框图运行时,循环体执行的次数是______次.
[答案] 499
[解析] i初值为2,步长为2,依次取值2,4,6,8,…,1000.当i=1000时跳出循环,故循环了499次.
16.(2010·湖南理,12)如下图是求12+22+32+…+1002的值的程序框图,则正整数n=________.
[答案] 100
[解析] 因为第一次判断执行后,s=12,i=2,第二次判断执行后,s=12+22,i=3,而题目要求计算12+22+32+…+1002,故n=100.
三、解答题(本大题共6个大题,共74分,解答应写出文字说明,证明过程或演算步骤)
17.(本题满分12分)某居民小区的物业部门每月向居民收取一定的物业费,收费办法为:住房面积不超过100m2的每月20元,超过部分每30m2每月加收10元(不足30m2以30m2计算).若该小区住房面积最大为150m2,试设计一个程序,求出每户居民应收取的物业费.
[解析] 设一户居民的住房面积为am2,应收物业费为b元,则
b=,根据这个函数用条件语句写出程序如下:
INPUT a
IF a<=100 THEN
b=20
ELSE
IF a<=130 THEN
b=30
ELSE
b=40
END IF
END IF
PRINT “b=”;b
END 18.(本题满分12分)画出求下面n个数的和的程序框图.(n∈N*).
,,,,…,.
[解析]
19.(本题满分12分)根据下列程序框图写出算法语句:
[解析] INPUT “n=”;n
i=1,S=0
WHILE i<=n
20.(本题满分12分)把区间[0,1]10等分,求函数y=+|x-2|在各分点的函数值,写出算法语句.
[解析] 把区间[0,10]10等分,故步长为0.1,∴用x=x+0.1表达,y=+|x-2|,用y=SQR
21.(本题满分12分)画程序框图,求使1+2+22+…+2n<1000成立的最大整数n.
[解析]
[点评] T=1+21+22+…+2i,用T<1000作为判断条件,当条件不成立时,T对应的i值已比要求的n值大1,由于i=i+1在语句T=T+2i后,故这时i的值比要求的n值大了2,故用n=i-2得到符合要求的n的值后输出.
22.(本题满分14分)百钱买百鸡问题:用100元钱买100只鸡,公鸡每只5元,母鸡每只3元,小鸡3只1元,问公鸡、母鸡、小鸡各买多少只?
[分析] 设买了x只公鸡,y只母鸡,则小鸡只数为z=100-x-y,100元钱最多买公鸡20只,∴0<x≤20,最多买母鸡33只,∴0<y≤33,让x、y循环,检验5x+3y+=100的条件是否满足,如果满足,则输出x,y,z.
https://www.unjs.com/