算法初步单元练习题Word格式.docx
《算法初步单元练习题Word格式.docx》由会员分享,可在线阅读,更多相关《算法初步单元练习题Word格式.docx(12页珍藏版)》请在冰豆网上搜索。
Ifx5+x3+x2-1>
0then
x2←x
Else
x1←x
x=(x1+x2)/2
Endwhile
Printx
A.辗转相除法B.二分法C.更相减损术D.秦九韶算法
4.解决某一问题而设计的 有限的步骤称为算法.( )
A.确定的 B.有效的C.连续的D.无穷的
5.用秦九韶算法求多项式f(x)=12+35x-8x2+79x3+6x4+5x5+3x6在x=-4的值时,v4的值为( )
A.-57B.220C.-845D.3392
6.如果有下列这段伪代码,那么将执行多少次循环( )
ExitFor
Next
A.4次B.5次C.7次D.10次
7.下面的伪代码输出的结果S为( )
I←1
WhileI<
8
I←I+2
S←2I+3
PrintS
A.17B.19C.21D.23
8.流程图中表示处理框的是( )
A.矩形框B.菱形框C.圆形框D.椭圆形框
9.下面伪代码表示的算法中,最后一次输出的I的值是( )
ForI=2to13Step3
PrintI
NextI
Print“I=”,I
A.5B.8C.11D.14
10.设学生的考试成绩为G,则下面的代码的算法目的是( )
n←0
m←0
Whilen<
50
ReadG
IfG<
60thenm←m+1
n←n+1
Printm
A.计算50个学生的平均成绩B.计算50个学生中不及格的人数
C.计算50个学生中及格的人数D.计算50个学生的总成绩
第Ⅱ卷
一、选择题(10×
5=50分)
题号
1
2
3
4
5
6
7
9
10
答案
二、填空题(6×
4=24分)
11.期末考试,教师阅卷评分,并检查每个学生成绩,如及格则作“升级”处理,不及格作“留级”处理.将下面的流程图补充完整.
12.说出下列算法的结果.
Reada,b,c
Ifa2+b2=c2then
Print“是直角三角形!
”
Print“非直角三角形!
运行时输入3、4、5
运行结果为输出:
.
13.已知流程图符号,写出对应名称.
(1);
(2) ;
(3).
14.算法的5大特征分别是:
(1)有0到多个输入;
(2) ;
(3)可行性;
(4)有限性;
(5) .
15.描述算法的方法通常有:
(1)自然语言;
(3)伪代码.
16.根据题意,完成流程图填空:
输入两个数,输出这两个数差的绝对值.
(1);
(2)
三、解答题(12+12+12+13+13+14=76分)
17.
(1)说出下列伪代码表示的算法目的.
Begin
S←1
I←3
WhileS≤10000
S←S×
I
End
(2)根据伪代码,写出执行结果.
算法开始
x←4;
y←8;
Ifx<
ythen
x←x+3;
x←x-1;
输出x的值;
算法结束
18.输入一学生成绩,评定其等级.方法是:
90~100分为“优秀”,80~89分为“良好”,60~79分为“及格”,60分以下为“不合格”.写出其算法的伪代码并画出流程图.
19.随着人的年龄的增加,成年人的肺活量会逐渐减少,假如我们用V表示人的肺活量(单位为L),用h表示人的身高(单位为英寸),a表示年龄,则这几个量近似的满足关系式:
V=0.104h-0.018a-2.69.请设计算法流程图,输入身高、年龄,输出肺活量.
20.一块橡皮1元钱,一枝笔2元钱,问100元钱能买橡皮和笔各多少?
数学模型:
设能买橡皮X块,笔Y枝,则X+2Y=100.求此方程的正整数解.
设计一个求此问题的算法,画出流程图并用伪代码表示.
21.通过计算机验证:
任意给定一个自然数N,一定存在自然数n,使1+1/2+1/3+…+1/n>
N.
写出流程图和伪代码.
22.相传在远古时代有一片森林,栖息着3种动物,凤凰、麒麟和九头鸟.凤凰有1只头2只脚,麒麟是1只头4只脚,九头鸟有9只头2只脚.它们这3种动物的头加起来一共是100只,脚加起来也正好是100只,问森林中各生活着多少只凤凰、麒麟和九头鸟?
写出算法、流程图及伪代码.
算法初步单元练习题答案
D
B
A
C
11.①及格 ②办留级手续12.是直角三角形!
13.起止框 处理框 判断框
14.确切性 有1个或多个输出15.流程图16.①a>
b ②b-a
17.
(1)寻找最小的正整数I,使1×
3×
5×
7×
…×
I>
10000.
(2)6.
解:
可以用If…then…Else的嵌套完成.
伪代码如下:
Readx
Ifx≥90then
Print“优秀”
ElseIfx≥80then
Print“良好”
ElseIfx≥60then
Print“及格”
Print“不及格”
EndIf
流程图:
伪代码和流程图如下:
ForYfrom1to49
X←100-2Y
PrintX,Y
伪代码:
ReadN
n←1
WhileS≤N
S←S+1/n
Printn
假设凤凰的只数为x,麒麟的只数为y,九头鸟的只数为z,那么,
(1)凤凰的只数x可能的取值为1~50,如果用伪代码表示,就应该如下:
Forx=1To50Step1
(2)麒麟的只数y可能的取值为1~25,如果用伪代码表示,就应该如下:
Fory=1To25Step1
(3)如果知道了凤凰和麒麟的只数后,那么九头鸟的只数就应该如下:
z=(100-x-y)/9.
如何考虑x、y、z三个变量之间的关系?
当凤凰x=1时(只在开始时),变量麒麟y的取值可以从1~25,让变量y从1开始取值(例如:
y的值为1);
通过(100-x-y)/9表达式,计算出z的值;
完成上述步骤后,x、y、z三个变量都取到了自己相应的值,但是这三个值是否是正确的解呢?
我们必须通过以下的两个条件来判断:
x+y+9×
z=100 And 2×
x+4×
y+2×
z=100.
如果全部满足,就输出x、y、z的值,如果不满足,就让y值加1,然后重复步骤
(2)到步骤(4),直至y的取值超过25;
然后让x的取值加1后,重复步骤
(1)到步骤(5)的操作,直至x的取值超过50为止,退出算法.
流程图和伪代码如下:
Forxfrom1to50
Foryfrom1to25
z←(100-x-y)/9
If2x+4y+2z=100then
PrintI,J,K