高中算法与程序设计实践指导参考答案(第二章)

合集下载

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

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

高二信息技术(算法与程序设计)试题卷一、单项选择题(每小题2.5分共50分将正确答案填到答题卷相应题号下)1、一同学想通过程序设计解决“鸡兔同笼”的问题,他制定的如下工作过程中,更恰当的是()。

A、提出问题、设计算法、编写程序、得到答案B、提出问题、编写程序、运行程序、得到答案C、编写程序、设计算法、调试程序、得到答案D、设计程序、提出问题、编写程序、运行程序2、下列常量说明中,符合语法的是()。

A、CONST color=redB、CONST const=10*5C、CONST xl:=3.9;D、CONST color=”abcd”3、下列代数式的Visual Basic表达式是( )。

A、(x^5-cos(29*3.14))/(sqr(exp(x)+log(y)))B、(x^5-cos(29))/(sqr(exp(x)+ln(y))+5)C、(x^5-cos(29*3.14/)/(sqr(exp(x)+ln(y))+5)D、(x^5-cos(0.506))/(sqr(exp(x)+log(y))+5)4、下列变量名写法错误的是()。

A、abcB、abc123C、abc_123D、123abc5、visual basic程序设计语言是一种()。

A、高级语言B、汇编语言C、机器语言D、数据库语言6、下列给出的赋值语句中正确的是()。

A、4 = MB、-M =MC、B=A-3D、x + y = 07、下列Visual Basic中,下列()的表达式的值不等于4。

A、int(4.1)B、fix(4.9)C、Abs(int(-3.9))D、Abs(int(-4.5))8、下面程序运行后的输出S结果为()。

i=1do WHILE i<8i=i+2:s=2*i+3loopPRINT sA、17B、19C、21D、239、下列Visual Basic中,下列()类型属于字符串型。

A、IntegerB、SingleC、StringD、Boolean10、在VB中表达式11\3+11 mod 3 的运算结果值是()。

高中数学第二章算法初步2.1顺序结构与选择结构课时作业含解析北师大版必

高中数学第二章算法初步2.1顺序结构与选择结构课时作业含解析北师大版必

学习资料第二章算法初步2算法框图的基本结构与设计2.1顺序结构与选择结构[课时作业][A组基础巩固]1.要解决下面的四个问题,只用顺序结构不能画出其程序框图的是()A.计算1+2+…+10的值B.当圆的面积已知时,求圆的周长C.给定一个数x,求其绝对值D.求函数f(x)=x2-3x-5的函数值解析:C中要判断x是大于等于0还是小于0,才能求其绝对值.答案:C2.下列说法:①条件结构是最简单的算法结构;②顺序结构就是按照程序语句运行的自然顺序,依次地执行顺序;③条件结构可以根据设定的条件,控制语句流程,有选择地执行不同的语句序列.其中正确的说法是()A.①②B.①③C.②③D.①②③答案:C3.运行如图所示的程序框图,输出的结果为11,则输入的x的值为()A.6B.5C.4D.3解析:依题意,令2x-1=11,解得x=6,即输入的x的值为6。

答案:A4.如图所示,当x1=6,x2=9,p=8.5时,x3等于()A.7 B.8C.10 D.11答案:B5.如图所示的算法框图,输出的结果是S=7,则输入A的值等于________.解析:2A+1=7,∴A=3。

答案:36.定义某种新运算“⊗”:S=a⊗b的运算原理为如图的程序框图所示,则式子5⊗4-3⊗6=________.解析:由题意知5⊗4=5×(4+1)=25,3⊗6=6×(3+1)=24,所以5⊗4-3⊗6=1。

答案:17.已知点P (x 0,y 0),直线l :x +2y -3=0,求点P 到直线l 的距离的一个算法程序框图如图所示,则在①处应填________.解析:应填上点到直线的距离公式. 答案:d =错误!8.如图所示的程序框图表示的是求方程ax +b =0(a ,b 为常数)的解.问:该程序框图正确吗?若不正确,请问它是哪一个问题的程序框图?应怎样修改?请写出正确的算法及程序框图.解析:不正确,该程序框图是求方程ax +b =0(a ≠0)的解. 正确的算法: 第一步,输入a ,b .第二步,若a ≠0,则x =-ba,并输出x ,执行第四步;否则,执行第三步.第三步,如果b ≠0,则输出“方程无实数解”;否则,输出“方程的解是全体实数". 第四步,结束. 程序框图如下:9.某居民区的物业管理部门每月向居民收取卫生费,计费方法是:3人和3人以下的住户,每户收取5元;超过3人的住户,每超出1人加收1。

程序设计基础课后答案 第二章

程序设计基础课后答案 第二章
cout<<a[i]<<" ";
cout<<endl;
}
int check1(int i, int n)//与前面的数不相同
{
int j;
for(j=1;j<=n-1;j++)
{
if(a[j]==i)
return 0;
}
return 1;
}
int check2(int n)//素数检查
一、简答题
1、什么是算法?算法的五个特性是什么?算法与程序的区别是什么?
答:算法是由明确定义规则组成的集合,这些规则定义了在有限步骤内解决某个特定问题的操作序列。
五个特型:输入、输出、确定性、有穷性、可行性
算法与程序有许多相似之处,但是存在区别。比如,有限性并不适用程序,像操作系统等,只要系统不被破坏,将一直运行下去。另外,在描述方法上也不同,程序用某种程序设计语言设计书写,而算法却没有这种性质,其描述方式相对灵活。
}
a[1]=1;
find(2);
return 0;
}
{
a[n]=i;
if(n==10)
output();
else
{
find(n+1);
a[n]=0;
}
}
}
}
int main()
{
int i;
for(i=1;i<=10;i++)
{
a[i]=0;
2、什么是递归与分冶策略?
分冶法的思想是将一个复杂的问题分解成一系列简单的组成部分,这些组成部分的复杂性低、易解决,将所有的组成部分解决后组合到一起得到复杂问题的解答。算法与程序设计中的递归技术是指将问题分为不同层次的子问题,解决每一层问题的难度随层次的降低而减小,这些不同层次的问题有极大的相似性,可以解决在某层次问题的算法中调用同一算法解决低层次问题,这种嵌套的算法调用运行,知道最低层次问题的解决。分冶法通常与递归一同使用,是一种解决复杂问题的有效策略。

2024_2025学年高中数学第二章算法初步阶段质量评估课时作业含解析北师大版必修3

2024_2025学年高中数学第二章算法初步阶段质量评估课时作业含解析北师大版必修3

阶段质量评估(二) 算法初步(本栏目内容,在学生用书中以独立形式分册装订)一、选择题(本大题共10小题,每小题5分,共50分.在每小题给出的四个选项中,只有一项是符合题目要求的)1.算法共有三种逻辑结构,即依次结构、选择结构、循环结构,下列说法正确的是( ) A .一个算法最多可以包含两种逻辑结构 B .一个算法只能含有一种逻辑结构 C .一个算法必需含有上述三种逻辑结构D .一个算法可以含有上述三种逻辑结构的随意组合解析: 一个算法必含有依次结构,而且也可以与另外两种结构随意组合. 答案: D2.下列赋值语句正确的是( ) A .a +b =5 B .5=a C .a =2b =2D .a =a +1解析: 赋值语句的一般格式是变量=表达式,赋值号左右两边不能互换,赋值号左边只能是变量,而不能是表达式.答案: D3.若输入x =0,那么下面算法框图描述的算法的运行结果是( )A .-2B .1C .-5D .-1解析: 本题中的选择结构的功能是求函数y =⎩⎪⎨⎪⎧3x -2,x ≥0,2x +1,x <0,的值,x 的初始值为x=0,从而进入选择结构中的x 的值是0,从而输出值为3×0-2=-2.答案: A4.(2024·辽宁沈阳质检)给出如图所示的程序框图,则该程序框图表示的算法的功能是()A.输出访2×4×6×…×(n-2)×n≥1 000成立的最小整数nB.输出访2×4×6×…×(n-2)×n≥1 000成立的最大整数nC.输出访2×4×6×…×(n-2)×n≥1 000成立的最大整数n+2D.输出访2×4×6×…×(n-2)×n≥1 000成立的最小整数n+2解析:由程序框图,可知该程序框图表示的算法的功能是输出访2×4×6×…×(n-2)×n≥1 000成立的最小整数n+2,选D.答案: D5.下列图形中,是条件语句的一般格式的是()解析:条件结构是先推断,推断是菱形框,然后执行语句.答案: C6.如图给出了一个算法框图,其作用是输入x的值,输出相应的y值.若要使输入的x 值与输出的y值相等,则这样的x值的个数是()A .1B .2C .3D .4解析: 分段函数表达式为y =⎩⎪⎨⎪⎧x 2,x ≤2,2x -3,2≤x ≤5,1x ,x >5,由x 2=x ,得x =0或1; 由2x -3=x ,得x =3;由x =1x 得x =±1,在x >5范围内无解.共3个值符合要求. 答案: C7.下面是求56个数的平均数的基本语句,在横线上应填写的内容为( ) S =0For i =1 To________ 输入x S =S +x Next a =S /56 输出________. A .56,a B .56,S C .57,a -1D .57,S -1解析: 由于是求56个数的平均数,所以循环变量的终值是56,输出的是这56个数的平均数a .答案: A8.执行如图所示的程序框图,则输出的S 值是( )A .-1 B.23 C.32D .4解析: 依据程序框图的要求一步一步地计算推断.因为S =4,i =1<9,所以S =-1,i =2<9;S =23,i =3<9;S =32,i =4<9;S =4,i=5<9;S =-1,i =6<9;S =23,i =7<9;S =32,i =8<9;S =4,i =9<9不成立,输出S=4.答案: D9.执行如下图所示的程序框图,输出的k 值是( )A .4B .5C .6D .7解析: 起先将n =5代进框图,5为奇数,∴代入n =3n +1,得n =16,此时k =1.此后n 为偶数,则代入n =n 2中,因输出时的n =1,1=1624,k =k +1,∴当n =1时,k =1+1+1+1+1=5,故选B.答案: B10.一个算法的程序框图如图所示,若该程序输出的结果为56,则推断框中应填入的条件是( )A .i <5B .i <6C .i ≥5D .i ≥6解析: 由题意知S =S +1i (i +1)=S +1i -1i +1i =1时,S =0+1-12=12;i =2时,S =1-12+12-13=1-13=23.∵输出结果为56,∴i =5时成立,i =6时不成立,故选B.答案: B二、填空题(本大题共4小题,每小题5分,共20分.把正确答案填在题中横线上) 11.写出下面算法框图的运行结果.若输入-4,则输出结果为________.解析: a =-4,由题意可知,a ≥0不成立,所以输出“是负数”. 答案: 是负数12.阅读下面的算法语句,假如输入x =-2,则输出的结果为________. 输入x ; If x <0 Then y =3]If x >0 Then y =2]Else y =0 End If End If 输出y .解析: 本题的算法表示的是求分段函数y =⎩⎪⎨⎪⎧2x -3,x >0,0,x =0,3x +1,x <0的函数值,明显,当x =-2时,y =3x +1=-5.答案: -513.按如图所示的流程图运算,若输入x =8,则输出的k =________.解析: 输入x =8时,x =8×10+8=88,k =1; 当x =88时,x =88×10+8=888,k =2; 当x =888时,x =888×10+8=8 888,k =3, 满意输出条件,此时输出的k =3. 答案: 314.按下列程序框图计算:假如输入x =2,应当运算________次才停止.解析: 该程序的循环过程如下:第一次x =4×2-3=5,其次次x =4×5-3=17,第三次x =4×17-3=65,第四次x =4×65-3=257,第五次x =4×257-3=1 025>260结束循环.所以共运算5次.答案: 5三、解答题(本大题共4个小题,共50分.解答应写出必要的文字说明、证明过程或演算步骤)15.(本小题满分12分)下面给出了一个问题的算法: 第一步,输入x .其次步,若x ≥4,则执行第三步,否则执行第四步. 第三步,y =2x -1,输出y . 第四步,y =x 2-2x +3,输出y . 问题:(1)这个算法解决的问题是什么? (2)当输入的x 值为多大时,输出的数值最小? 解析: (1)这个算法解决的问题是求分段函数y =⎩⎪⎨⎪⎧2x -1,x ≥4,x 2-2x +3,x <4,的函数值.(2)当x ≥4时,y =2x -1≥7;当x <4时,y =x 2-2x +3=(x -1)2+2≥2.所以y min =2,此时x =1.即当输入的x 的值为1时,输出的数值最小.16.(本小题满分12分)请依据给出的算法程序画出算法框图. a =1 b =1 i =2 Do c =a +b a =b b =c i =i +1Loop While i <=12输出c.解析:给出的算法程序对应的算法框图如图所示.17.(本小题满分12分)已知某算法的程序框图如图所示,将输出的(x,y)依次记为(x1,y1),(x2,y2),…,(x n,y n),….(1)若程序运行中输出的一个数组是(9,t),求t的值;(2)程序结束时,共输出的(x,y)的组数为多少?(3)写出程序框图的程序.解析:(1)输出的数组依次是(1,0),(3,-2),(9,-4),(27,-6),…,所以t=-4.(2)当n=1时,输出一个数组;当n=3时,又输出一个数组;……;当n=2 017时,输出最终一个数组.则共输出的(x,y)的组数为1 009.(3)程序框图的程序如下:18.(本小题满分14分)有一堆桃子不知数目,猴子第一天吃掉一半,觉得不过瘾,又多吃了一个.其次天照此方法,吃掉剩下桃子的一半另加一个.每天如此,到第十天早上,猴子发觉只剩一个桃子了.问这堆桃子原来有多少个?请写出算法步骤、程序框图和程序.解析:算法如下.第一步,a1=1.其次步,i=9.第三步,a0=2×(a1+1).第四步,a1=a0.第五步,i=i-1.第六步,若i=0,执行第七步,否则执行第三步.第七步,输出a0的值.程序框图和程序如下:a1=1i=9Doa0=2×(a1+1) a1=a0i=i-1Loop Until i=0 Print a0End。

《算法与程序设计》一、二章基本概念复习题答案

《算法与程序设计》一、二章基本概念复习题答案

《算法与程序设计》一、二章基本概念复习题答案一、单选题(每个3分,共60分)1.下列选项中,不属于计算机程序设计语言的是( C )A.汇编语言B.高级语言C.自然语言D.机器语言2. 关于算法的描述,下列选项中正确的是( B )A.算法本身就是一种程序设计语言B.算法的每一步骤必须有确切的含义C.算法的步骤可以是无穷的D.算法必须有输入3. VB程序中“dim n As Integer”这条语句的作用是( A)A.定义一个变量B.定义一个数据输入方法C.定义一个事件过程D.定义一个数据处理方法4.一个单窗体VB程序的运行界面如下图所示,下列说法正确的是:(C)(1)窗体内有1个按纽(2)窗体内有2个文本框(3)窗体内有3个标签(4)该窗体的标题(Caption)属性值是“加法计算器”A.(3) (4)B.(1)(2)C.(1)(4)D.(2) (3)5. 两个阻值分别为R1、R2的电阻并联后,电路阻值可由公式求解,下面能正确求出R的VB表达式是(A)。

A.R1*R2/(R1+R2)B.R1+R2/(R1*R2)C.(R1+R2)/(R1*R2)D.R1*R2/R1+R26. 关于算法的描述,下列选项中正确的是(D)A.算法只能用流程图来表示B.一个算法的执行步骤可以是无限的C.一个算法,当没有输入时,也没有输出D.一个算法可以没有输入7. 在VB语言中,字符串运算符“+”和“&”的作用是把两个或多个字符串连接成一个字符串。

则表达式"20"+"13"&"20+13"的运算结果是(B )。

'A. “332013”B.”201320+13”C.”201333”D.”3333”8. 下列VB程序运行时(如图所示),在文本框Text1中输入20,在文本框Text2中输入13,单击命令按钮Command1后,文本框Text3中显示的内容是(D)。

2020_2021学年高中数学第二章算法初步本章知识体系学案含解析北师大版必修

2020_2021学年高中数学第二章算法初步本章知识体系学案含解析北师大版必修

第二章算法初步本章知识体系专题一算法的设计【例1】设计一个算法,求方程x2-4x+2=0在(3,4)之间的近似根,要求精确度为10-4,算法步骤用自然语言描述.【思路探究】可以利用二分法的步骤设计算法.【解答】 算法步骤如下:第一步,令f (x )=x 2-4x +2,由于f (3)=-1<0,f (4)=2>0,所以设x 1=3,x 2=4. 第二步,令m =x 1+x 22,判断f (m )是否等于0,若f (m )=0,则m 为所求的根,结束算法;若f (m )≠0,则执行第三步.第三步,判断f (x 1)f (m )>0是否成立,若成立,则令x 1=m ;否则令x 2=m .第四步,判断|x 1-x 2|<10-4是否成立,若成立,则x 1与x 2之间的任意取值均为满足条件的近似根;若不成立,则返回第二步.【规律方法】 (1)算法设计与一般意义上的解决问题不同,它是对一类问题的一般解法的抽象与概括,它往往是把问题的解法划分为若干个可执行的步骤,有时是重复多次,但最终都必须在有限个步骤之内完成.(2)对于给定的问题,设计其算法时应注意以下四点: ①与解决问题的一般方法相联系,从中提炼与概括步骤; ②将解决问题的过程划分为若干步骤; ③引入有关的参数或变量对算法步骤加以表述; ④用简练的语言将各个步骤表达出来.已知平面坐标系中两点A (-1,0),B (3,2),写出求线段AB 的垂直平分线方程的一个算法. 解:第一步,计算x 0=-1+32=22=1,y 0=0+22=1,得AB 的中点N (1,1).第二步,计算k 1=2-03-(-1)=12,得AB 的斜率.第三步,计算k =-1k 1=-2,得AB 垂直平分线的斜率.第四步,由点斜式得直线AB 的垂直平分线的方程:y -1=-2(x -1),即2x +y -3=0.专题二 算法的选择结构【例2】 阅读如图所示的算法框图,如果输出的函数值在区间[14,12]内,则输入的实数x 的取值范围是( )A .(-∞,-2)B .[-2,-1]C .[-1,2]D .(2,+∞)【解答】 若x ∉[-2,2],则f (x )=2∉[14,12],不符合题意;当x ∈[-2,2]时,由f (x )=2x ∈[14,12],得x ∈[-2,-1]. 【答案】 B【规律方法】 框图表示的是一个分段函数的求值问题,题目是由函数值的范围求自变量的范围.如图是求实数x 的绝对值的算法程序框图,则判断框①中可填x >0或x ≥0.解析:本题以绝对值为背景,主要考查了算法框图,重点考查了选择结构中的条件语句,根据绝对值的含义,非负数的绝对值是它本身,负数的绝对值是它的相反数,以及0的特殊性,故填x>0或x≥0.专题三算法的循环结构【例3】若1+3+5+…+n>2 015,试设计算法框图,寻找满足条件的最小奇数n.【解答】因为涉及累加问题,所以算法含有循环结构,写出算法步骤如下:1.S=0,i=1.2.S=S+i,i=i+2.3.判断S>2 015是否成立;(1)若S>2 015,则i=i-2,输出i;(2)若S<2 015,返回步骤2.算法框图:①画顺序结构图,即起止框及两个处理框,并分别填入循环初始条件(如图①);②画循环结构图,先画循环体即两个处理框(一个累加,一个计数),再画循环终止条件,即判断框并判断S>2 015,若不成立,则流向循环体进行再循环(如图②);③画处理框并填入“i=i-2”,输出框输出i以及起止框表示算法结束(如图③).最后,合成整个算法框图如下图.【规律方法】循环结构必包含顺序结构和选择结构,所以本题具有一定的典型性和示范性;如累加、累乘等需要反复执行的算法设计中,宜使用循环结构,这时要密切注意“循环体”、“循环变量”和“循环终止条件”三个重要组成部分的框图设计.执行如图所示的程序框图,输出的结果为(B)A.(-2,2) B.(-4,0)C.(-4,-4) D.(0,-8)解析:运行程序:x=1,y=1,k=0,s=1-1=0,t=1+1=2,x=0,y=2,k=0+1=1,因为1<3,否,s=-2,t=2,x=-2,y=2,k=2,因为2<3,否,s=-4,t=0,x =-4,y=0,k=3,因为3≥3,是,输出(-4,0).故选B.专题四基本算法语句编写程序的基本方法是“自上而下,逐步求精”,即首先把一个复杂的大问题分解成若干个相对独立的小问题,如果小问题仍较复杂,则可以把这些小问题再继续分解成若干个子问题,这样不断分解,便可使得小问题或子问题简单到能够直接用程序的三种基本结构表达为止,然后,对应每一个小问题或子问题编写出一个功能上相对独立的程序模块来,每个模块各个击破,最后再统一组装,问题便可得到解决.【例4】 高等数学中经常用到符号函数sgn(x ),其定义为y =⎩⎪⎨⎪⎧1(x >0),0(x =0),-1(x <0).试编写程序,输入x 的值,输出y 的值.【思路探究】 由于此函数是一个分段函数,对于输入的x 的值,应根据x 的取值范围,选择相应的解析式代入求值,故要利用条件语句进行处理.又因为实数x 的取值共分三个范围,所以要用条件语句的嵌套.【解答】 算法框图如下图所示.程序语言如下: 输入 x If x >0 Theny =1 ElseIf x =0 Theny =0 Elsey =-1 End IfEnd If 输出 y End【规律方法】 在编写条件语句的嵌套中的“条件”时,要注意“If ”与“End If ” 的配对,还可以用文字缩进来表示嵌套的层次,以帮助对程序的阅读和理解.给出30个数:1,2,4,7,…,其规律是:第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,依此类推,要计算第30个数的大小.现在已给出了该问题算法的流程图,如下图所示.(1)请在图中判断框①处和执行框②处填上合适的语句,使之能完成该题算法功能;(2)根据流程图写出程序.解:(1)①中应填写“i>30”,②中应填写“P=P+i”.(2)程序如下:P=1S=0i=1DoS=S+PP=P+ii=i+1Loop While i<=30输出S。

算法导论参考答案

算法导论参考答案

第二章算法入门由于时间问题有些问题没有写的很仔细,而且估计这里会存在不少不恰当之处。

另,思考题2-3 关于霍纳规则,有些部分没有完成,故没把解答写上去,我对其 c 问题有疑问,请有解答方法者提供个意见。

给出的代码目前也仅仅为解决问题,没有做优化,请见谅,等有时间了我再好好修改。

插入排序算法伪代码INSERTION-SORT(A)1 for j ←2 to length[A]2 do key ←A[j]3 Insert A[j] into the sorted sequence A[1..j-1]4 i ←j-15 while i > 0 and A[i] > key6 do A[i+1]←A[i]7 i ←i − 18 A[i+1]←keyC#对揑入排序算法的实现:public static void InsertionSort<T>(T[] Input) where T:IComparable<T>{T key;int i;for (int j = 1; j < Input.Length; j++){key = Input[j];i = j - 1;for (; i >= 0 && Input[i].CompareTo(key)>0;i-- )Input[i + 1] = Input[i];Input[i+1]=key;}}揑入算法的设计使用的是增量(incremental)方法:在排好子数组A[1..j-1]后,将元素A[ j]揑入,形成排好序的子数组A[1..j]这里需要注意的是由于大部分编程语言的数组都是从0开始算起,这个不伪代码认为的数组的数是第1个有所丌同,一般要注意有几个关键值要比伪代码的小1.如果按照大部分计算机编程语言的思路,修改为:INSERTION-SORT(A)1 for j ← 1 to length[A]2 do key ←A[j]3 i ←j-14 while i ≥ 0 and A[i] > key5 do A[i+1]←A[i]6 i ←i − 17 A[i+1]←key循环丌变式(Loop Invariant)是证明算法正确性的一个重要工具。

高中《算法与程序》习题答案

高中《算法与程序》习题答案

用递归方法编写两个整数相乘的程序public static int multiply(int a, int b){if (b == 0) return 0;if (b % 2 == 0) return multiply(a+a, b/2);return multiply(a+a, b/2) + a;}写一个生成1000个10000以内随机数数据,二分查找法找到一个值得位置,如果没有则为-1,有则返回数组位置public static void main(String[] args) {int[] arr=new int[1000];for(int i=0;i<arr.length;i++){int rad=(int)(Math.random()*10000);int j=0;while(1==1){if(rad==arr[j]){rad=(int)(Math.random()*10000);j=0;continue;}else{j++;if(j>i){j=0;break;}}}int c;System.out.println("\n"+xxx(arr,c));}public static int xxx(int[] arr,int c){int low=0;int high=arr.length-1;while(low<=high){int mid=(low+high)/2;if(c==arr[mid]){return mid;}else if(c>arr[mid]){low=mid+1;}else{high=mid-1;}}return -1;}随机产生20个100以内的数,输出;按从小到大的顺序排序,输出。

#include "stdio.h"#include "stdlib.h"#include "time.h"int main(){int a[20]={0};int i,j,tmp;srand(time(NULL));printf("随机生成的20个数据:\n");for(i=0;i<20;i++){a[i]=rand()%101;printf("%d\t",a[i]);}//从小到大排序for(i=0;i<19;i++)for(j=i+1;j<20;j++)if(a[i]>a[j]){tmp=a[i];a[i]=a[j];a[j]=tmp;}printf("\n从小到大排序后输出:\n");for(i=0;i<20;i++)printf("%d\t",a[i]);printf("\n");}。

《算法与程序设计》试题带答案

《算法与程序设计》试题带答案

高一第二学期《算法与程序设计》学分认定试题学校:_____________ 班级:____________ 学号:____________ 姓名:____________一、单选题(每小题3分,20小题,共60分)1、用计算机解决问题时,首先应该确定程序“做什么?”,然后再确定程序“如何做?”请问“如何做?”是属于用计算机解决问题的哪一个步骤?()A、分析问题B、设计算法C、编写程序D、调试程序2、在调试程序过程中,下列哪一种错误是计算机检查不出来的?()A、编译错误B、执行错误C、逻辑错误D、任何错误计算机都能检查出来3、下列关于算法的叙述中,错误的是()A、一个算法至少有一个输入和一个输出B、算法的每一个步骤必须确切地定义C、一个算法在执行有穷步之后必须结束D、算法中有待执行的运算和操作必须是相当基本的。

4、流程图中表示判断的是()。

A、矩形框B、菱形框C、圆形框D、椭圆形框5、任何复杂的算法都可以用三种基本结构组成,下列不属于基本结构的是()A、顺序结构B、选择结构C、层次结构D、循环结构6、能够被计算机直接识别的语言是()A、伪代码B、高级语言C、机器语言D、汇编语言7、在VB语言中,下列数据中合法的长整型常量是()A、08AB、2380836EC、88.12345D、1.2345E68、求Mid(“ABCDEFG”,3,2)的结果是()A、“ABC”B、“CD”C、“ABCDEF”D、“BCD”9、表达式 A+B+C<D AND A>=3 OR NOT C<0 OR D>0当A=3,B=4,C=-5,D=6时的运算结果是()A、0B、1C、TRUED、FALSE10、在循环语句 For x=1 to 100 step 2……Next x 中,x能达到的最大值是()A、100B、99C、98D、9711、在下列选项中,不属于VB的对象的是()A、窗体的背景颜色B、命令按钮C、文本框D、标签12、在调试程序的时候,经常要设置断点,设置断点的快捷键是()A、F1B、F8C、F9D、F1213、算法描述可以有多种表达方法,下面哪些方法不可以描述“闰年问题”的算法()A、自然语言B、流程图C、伪代码D、机器语言14、以下不属于非法用户自定义标识符(常量和变量命名)的是()A、8adB、ad8C、_a8dD、const15、已知A,B,C,D是整型变量,且都已有互不相同的值,执行语句B=0;A=C;D=A;D=B;后,其值相等的变量是()A、A,DB、A,CC、C,BD、B,A16、要交换变量A和B的值,应使用的语句组是( )A、A=B;B=C;C=AB、C=A;A=B;B=CC、A=B;B=AD、C=A;B=A;B=C17、Visual Basic中以单引号开头一行文字称为注释,它对程序的运行()A、起一定作用B、有时候起作用C、不起任何作用,但是必须的D、不起任何作用,但能增加程序的可阅读性18、要使一个命令按钮显示文字“确定”,正确的设置是把该命令按钮的()。

高中数学 第二章 算法初步 2.1 算法的基本思想课后训练 北师大版必修3(2021年最新整理)

高中数学 第二章 算法初步 2.1 算法的基本思想课后训练 北师大版必修3(2021年最新整理)

编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(高中数学第二章算法初步2.1 算法的基本思想课后训练北师大版必修3)的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为高中数学第二章算法初步2.1 算法的基本思想课后训练北师大版必修3的全部内容。

修31.下列语句表述的是算法的有( ).①做米饭需要刷锅、淘米、添水、加热这些步骤;②利用公式12S ah=计算底为1、高为2的三角形的面积;③1242x x>+;④求M(1,2)与N(-3,-5)两点连线的方程可先求MN的斜率再利用点斜式方程求得.A.1个 B.2个 C.3个 D.4个2.已知算法:1.输入n。

2.判断n是否是2,若n=2,则n满足条件;若n>2,则执行第3步.3.依次检验从2到n-1的整数能不能整除n,若不能整除n,则满足条件.上述满足条件的数是().A.质数 B.奇数 C.偶数 D.4的倍数3.下列所给问题中:①用二分法解方程:x2-3=0(精确到0.01);②解方程组50,30; x yx y++=⎧⎨-+=⎩③求半径为2的球的体积;④判断函数y=x2在R上的单调性.其中可以设计一个算法求解的个数是().A.1 B.2 C.3 D.44.下列是用“二分法”求方程x2-5=0的近似解的算法,请补充完整.1.令f(x)=x2-5,给定精确度d.2.确定区间(a,b),满足f(a)f(b)<0.3.取区间中点m=________.4.若f(a)f(m)<0,则含零点的区间为(a,m);否则,含零点的区间为(m,b).将新得到的含零点的区间仍记为(a,b).判断(a,b)的长度是否小于d或f(m)是否等于0.若是,则m是方程的近似解;否则,返回第3步.5.下面是一个求底面直径为8,高为4的圆锥的表面积与体积的算法,请补充完整.1.取r=4,h=4。

高中信息技术《算法与程序设计》练习

高中信息技术《算法与程序设计》练习

《算法与程序设计》练习(满分:100分)说明:本卷分为第一卷和第二卷两部分。

第一卷为客观题,含单选题和判断题,其中单选题30小题,共45分;判断题20小题,共20分。

第二卷为操作题,共3题,第1题15分,第2题10分,第3题10分,共35分。

一、单选题1、(1.5分)下面是4位同学为解决问题编写的程序,完全正确的是( )。

同学1:某同学从17岁开始栽了1棵树,以后每年都比前一年多栽1棵,他要栽够100棵树,最小得多少岁?程序如下:Private Sub Command1_Click( )Dim Age As Integer,Tree As IntegerDoAge=17Age=Age+1Tree=Tree+Age(Tree应该是树的累加数,这样合适吗?)Loop Until Tree=100Print Age & “岁”End Sub同学2:计算S=1×2×3×4×5×6×7×8×9的值。

程序如下:Private Sub Command1_Click( )Dim S As Integer(S没有初始值,默认为0)For a = 1 To 10(终值设置错误)S = S * aNext aPrint “S=” & SEnd Sub同学3:求解方程ax+b=0。

程序如下:Private Sub Command1_Click( )Dim A As Single,B As SingleInputBox("A=")(从键盘得到的数据赋给谁了?)InputBox("B=")X=-B/APrint XEnd Sub同学4:计算S=1+(1+2)+(1+2+3)+…+(1+2+3+…+100)的值。

程序如下:. Private Sub Command1_Click()Dim i As Integer,T As Long,S As LongS=0:T=0For i=1 to 100T=T+i(T的值为:1+2+3+……n)S=S+TNext IPrint "S="; SEnd SubA、同学 1B、同学 2C、同学32、(1.5分)下面的4个VB程序段能使变量a、b、c的值全部相同的是( )。

2020_2021学年高中数学第二章算法初步2.2.1顺序结构与选择结构学案含解析北师大版必修

2020_2021学年高中数学第二章算法初步2.2.1顺序结构与选择结构学案含解析北师大版必修

§2算法框图的基本结构及设计2.1顺序结构与选择结构知识点一算法框图[填一填]1.通常,为了使算法结构更加清晰,可借助框图来帮助描述算法,这便得到了算法框图.图的特点是直观、清楚,便于检查和交流.算法框图有三种基本结构:顺序结构、选择结构和循环结构.2.几个基本的框图和它们各自表示的功能.[答一答] 1.画算法框图的步骤.提示:画算法框图的步骤:(1)提出问题;(2)确定数学模型和计算方法;(3)画程序框图;(4)检查有无错误;(5)修改程序框图;(6)结束.其过程如图.知识点二顺序结构和选择结构[填一填]3.顺序结构(1)定义:按照步骤依次执行的一个算法,称为具有“顺序结构”的算法,或者称为算法的顺序结构.(2)算法框图:如图所示.(3)执行步骤的方式:先执行步骤甲,再执行步骤乙.4.选择结构(1)定义:在算法中,需要判断条件的真假,依据判断的结果决定后面的步骤,像这样的结构通常称为选择结构.(2)算法框图:如图所示.(3)执行步骤的方式:每次仅能执行一个步骤.当条件为真时,执行步骤甲;当条件为假时,执行步骤乙,不能同时执行这两个步骤,也不能一个步骤也不执行.[答一答]2.算法框图的判断框有两个退出点,是否表示在这里同时执行?提示:不是,在判断框处进行真假判断,只能执行其中一个.(1)起、止框是任何算法框图都不可缺少的,表明程序的开始或结束;(2)输入(出)框可以用在算法中任何需要输入(出)的位置,需要输入(出)的字母、符号、数据等都填在框内;(3)处理框用于填写处理数据需要的算式、公式等,另外,对变量进行赋值,也用到处理框;(4)当算法要求对两个不同的结果进行判断时,需要将判断的条件写在判断框内;(5)一个算法步骤到另一个算法步骤用流程线“↓”或“”连接,如果一个算法框图需分开来画,要在断开处画上连接点,并标出连接的号码.类型一顺序结构的算法框图【例1】已知f(x)=x2-2x-3,求f(3),f(-5),f(5),f(3)+f(-5)+f(5)的值.设计出解决该问题的一个算法,并画出算法框图.【思路探究】本题的算法实际上就是将相关数值代入函数计算的过程.【解】算法步骤如下:1.输入x=3;2.计算y1=x2-2x-3;3.输入x=-5;4.计算y2=x2-2x-3;5.输入x=5;6.计算y 3=x 2-2x -3; 7.计算y =y 1+y 2+y 3; 8.输出y 1,y 2,y 3,y . 算法框图如图所示.规律方法 画顺序结构框图的思路顺序结构指的是依次进行多个处理的结构,其特点是各部分按照出现的先后顺序执行.在使用顺序结构画算法框图时要注意:(1)正确使用各种图框;(2)要先输入,再运算,最后输出结果.已知两点A (x 1,y 1),B (x 2,y 2),求线段AB 的长度d 及中点P 的坐标,试设计算法,并画出算法框图.解:算法步骤如下: 1.输入x 1,y 1,x 2,y 2; 2.计算d =(x 2-x 1)2+(y 2-y 1)2;3.计算x 0=x 1+x 22,y 0=y 1+y 22;4.输出d ,x 0,y 0. 算法框图如图所示.类型二 设计含有选择结构的算法框图【例2】 已知函数y =⎩⎪⎨⎪⎧1+x ,x >0,0,x =0,-x -3,x <0,设计一个算法,输入自变量x 的值,输出对应的函数值.请写出算法步骤,并画出算法框图.【思路探究】 该函数是分段函数,当x 取不同范围内的值时,函数表达式不同.因此当给出一个自变量x 的值时,也必须先判断x 的范围,然后确定利用哪一个解析式求函数值,因此函数解析式分为三段,所以判断框需要两个,即进行两次判断.【解】 算法如下: 1.输入自变量x 的值.2.判断x >0是否成立,若成立,计算y =1+x ,否则,执行下一步. 3.判断x =0是否成立,若成立,令y =0,否则,计算y =-x -3. 4.输出y .算法框图如图所示.规律方法 设计算法框图时,首先设计算法步骤(自然语言),再将算法步骤转化为算法框图(图形语言).如果已经非常熟练地掌握了画算法框图的方法,那么可以省略设计算法步骤而直接画出算法框图.对于算法中含有分类讨论的步骤,在设计算法框图时,通常用选择结构来解决.画算法框图时,容易漏掉终端框,其原因是没有掌握画程序框图的规则,任何算法框图必须有终端框,终端框表示算法框图的开始和结束,否则是不完整的.求过两点P 1(x 1,y 1),P 2(x 2,y 2)的直线的斜率.设计该问题的算法并画出算法框图. 解:先对x 1,x 2是否相等进行判断,然后利用斜率公式. 算法如下:第一步,输入x 1,y 1,x 2,y 2. 第二步,如果x 1=x 2,输出“斜率不存在”; 否则,k =y 2-y 1x 2-x 1.第三步,输出k . 算法框图如下图所示:类型三 算法框图所表示的算法的功能【例3】 阅读如图所示的框图,回答下列问题: (1)该框图要解决的是什么问题?(2)若输入的x 值为0和4时,则输出的y 值相等,求当输入的x 值为3时输出的y 值.(3)依据(2)的条件,要想使输出的y值最大,求输入的x值.【思路探究】分清各框图的功能,根据各框图内容及框图的关系求解.【解】(1)该框图是求二次函数y=-x2+mx的函数值.(2)令f(x)=-x2+mx.当输入的x值为0和4时,输出的y值相等,即f(0)=f(4),解得m=4,所以f(x)=-x2+4x,所以f(3)=-32+4×3=3,即当输入的x值为3时,输出的y值为3.(3)由(2)可知f(x)=-x2+4x=-(x-2)2+4,故当输入的x值为2时,输出的y值最大,最大值为4.规律方法读懂框图是本节的基本要求,高考对框图考查的类型之一就是读图,明白框图的作用是什么,解决的是什么问题,解决问题的过程中需要用到哪些步骤.对于顺序结构的框图,按照自上而下的顺序依次执行即可.下图所示的算法框图的功能是已知圆的半径,求圆的面积.类型四 实际应用问题的框图设计【例4】 “特快专递”是目前人们经常使用的异地邮寄信函或托运物品的一种快捷方式.某快递公司对甲、乙两地之间物品的托运费的规定如下:若托运物品的质量x 不超过50千克,则按每千克0.53元收取托运费;若托运物品的质量超过50千克,则超出部分按每千克0.85元收取托运费.试画出计算托运费用的算法框图.【思路探究】 审题→选择函数模型→写出函数解析式→设计算法→画程序框图【解】 依题意,甲、乙两地之间物品的托运费y (元)与托运物品的质量x (千克)之间的函数关系式为:y =⎩⎪⎨⎪⎧0.53x , 0≤x ≤50,50×0.53+(x -50)×0.85, x >50故只要把托运物品的质量x 输入,再根据相应的公式进行计算,即可输出托运物品的费用.算法框图如下图所示.规律方法 这是一个实际问题,首先要建立实际问题的数学模型,即根据题意写出函数表达式,显然这是一个分段函数.根据函数表达式可知,托运费用的计算公式随物品质量x 的变化而有所不同,因此在计算时要先对物品的质量作出判断,在不同的条件下执行不同的指令,这是选择结构的运用,只涉及一个判断点,因而是二分支条件判断的选择结构.银行的三年期定期存款年利率4.25(每100元存款到期平均每年获利4.25元).请你设计一个程序,输入存款数,输出利息与本利和.解:设存款为a元,据题意三年到期利息b为:a100×4.25×3=0.127 5a元.到期本利和p为:a+0.127 5a=1.127 5a元.算法框图为:——规范解答——分类讨论思想在条件结构中的应用分类讨论的思想在算法中有着广泛的应用,特别是在算法的“条件结构”中,分类讨论的思想彰显得特别明显.【例5】(12分)在图书超市里,每本书售价为25元,顾客如果购买5本以上(含5本),则按八折优惠;如果购买10本以上(含10本),则按五折优惠.请写出算法并画出这个算法的算法框图.【思路点拨】明确题意,写出函数表达式,写出算法,然后画出算法框图.【满分样板】设购买的图书为x本,付费y元,由题意知:y=⎩⎨⎧25x(x<5),20x(5≤x<10),12.5x(x≥10).4分算法如下:第一步,输入x.第二步,若x <5,则y =25x ;否则执行第三步.第三步,若x <10,则y =20x ;否则执行第四步.第四步,y =12.5x .第五步,输出y .8分算法框图如图所示.12分【思维启迪】 1.本例是实际问题,故应先建立数学模型,找出函数关系式y =⎩⎪⎨⎪⎧ 25x , (x <5),20x , (5≤x <10),12.5x , (x ≥10),由此看出,求付费时需先判断x 的范围,故应用条件结构描述.2.该问题含有两个条件结构,当题目出现多个条件时,要分清条件的先后次序,再设计算法框图.设火车托运质量为w (kg)的行李时,每千米的费用(单位:元)标准为f =⎩⎪⎨⎪⎧0.4w , w ≤30,0.4×30+0.5(w -30),w >30.试画出路程为s 千米时,行李托运费用M 的算法框图. 解:算法如下:第一步,输入物品质量w 、路程s ,第二步,若w >30,则f =0.4×30+0.5(w -30);否则,f =0.4w .第三步,计算M =s ×f .第四步,输出M .算法框图如图所示:一、选择题1.下列函数求值算法的算法框图中需要选择结构的函数为( C )A .f (x )=x 2-1B .y =x 2-1C .f (x )=⎩⎪⎨⎪⎧x 2+1 x ≤2.5,x 2-1 x >2.5 D .f (x )=2x解析:C 项的算法框图执行前,首先要对输入的x 的值进行一个判断,然后再根据不同的条件进行下一步计算,是典型的选择结构.2.对起止框叙述正确的是( C )A .表示一个算法的开始或结束,图形符号是▭B .表示一个算法的输入和输出的信息,图形符号是◇C .表示一个算法的开始或结束,图形符号是D .表示一个算法中输入和输出的信息,图形符号是▭解析:起、止框表示一个算法的开始或结束,用椭圆形的矩形表示.故选C.3.阅读如图所示的算法框图,若输入的a 、b 、c 分别是21、32、75,则输出的a 、b 、c 分别是( A )A.75、21、32 B.21、32、75 C.32、21、75 D.75、32、21 解析:执行过程如下:∵a=21,b=32,c=75,x=a=21,a=c=75,c=b=32,b=x=21,∴输出a=75,b=21,c=32.二、填空题4.写出图中算法框图的运行结果.(1)由①中输出S =52. (2)由②中,若R =16,则a =4. 解析:(1)由图①知S =3/6+6/3=52. (2)由图②知,若输入16,则b =16/4=2,a =2×2=4.5.根据如图所示的算法框图填空.(1)若输入的x 值为5,则输出的结果是15;(2)要使输出的值为8,则输入的x 值是4;(3)要使输出的值最小,则输入的x 的范围是x <2.解析:正确地按照算法框图所指定的过程进行,方可得出正确的结论.三、解答题6.三角形的面积公式为S =12ah ,写出当a =10,h =20时求三角形面积数值的一个算法,并画出算法框图.解:算法:S 1 取a =10,h =20;S 2 计算S =12ah ; S 3 输出S .算法框图略。

浙教版高一《算法与程序设计》第二章解析算

浙教版高一《算法与程序设计》第二章解析算

浙教版高一《算法与程序设计》第二章解析算法的教学案例浙江象山中学黄琴一、设计思想本课设计打破教材编写顺序,将本教材中的第二章的算法与第五章的程序实现结合起来组织教学,通过理论结合实践,让学生更容易理解各种算法的基本设计思想,体验编写程序的成功感受,同时又能掌握解析思想。

“解析算法”思想是:找出问题前提条件与结果之间正确得数学表达式。

那么如何把解析思想体现在算法中,用程序语言实现呢?。

我在教学过程中对整堂课的设计上的思路是:通过具体情境认知主题——体验主题——实现主题——拓展主题——这几个阶段层层深入的递进式方法使学生充分掌握解析算法。

算法课一般与枯燥,晦涩,难懂,逻辑等字眼联系在一起,往往难以激发学生兴趣。

如何打破这种局面?如何激发学生兴趣,使学生情不自禁的,自主的去学习算法呢?新课程倡导“人文与生活”,在了解学生的身心发展特点前提下,尊重学生的学习、生活、兴趣,真正以学生为主体,有创造性地设计信息技术教学环节。

本课作的设计除了遵循算法自顶而下,逐步求精的思想之外,新意之处在于根据电影情节别出心裁创设了一个情境,由计算男女主角相遇时间导入,在故事中不留痕迹地渗透了教学内容,完成由简单到复杂的教学任务。

二、教材分析本节课是《算法与程序设计》第二章《算法实例》第二节的内容,主要任务是学会使用解析算法设计简单算法流程图,并掌握用程序设计语言VB来实现有关解析算法的实例。

解析算法来源于生活,生活中的很多问题都是用解析算法解决的。

解析算法注重学生逻辑思维能力的训练,同时它也充分体现了用计算机解决实际问题的思想,是设计算法的一种重要方法。

教材中引用了“计算n 个电阻并列后的总电阻值”和“储蓄顾问”两个例子让学生体验解析算法思想及其储蓄实现,我觉得可能对学生的兴趣的激发可能不够,所以试想能否沿用上节课的情境,让学生维趣。

三、学情分析1、在前面的教学中,学生已经理解了算法的特点,学习了算法的三种表示方式,理解了顺序、选择、循环三种基本结构,并通过参与活动手册中的实践,对程序有了初步的认识。

2020_2021学年高中数学第二章算法初步2.2.1顺序结构与选择结构学案含解析北师大版必修320

2020_2021学年高中数学第二章算法初步2.2.1顺序结构与选择结构学案含解析北师大版必修320

2 算法框图的基本结构与设计2.1 顺序结构与选择结构考纲定位重难突破1.掌握算法框图中的两种算法结构——顺序结构、选择结构及其特点.2.通过具体的实例体会用算法框图表示算法的优点.3.会用算法框图表示简单的算法.重点:理解并掌握顺序结构、选择结构.难点:能正确选择并运用两种逻辑结构框图表示具体问题的算法.授课提示:对应学生用书第25页[自主梳理]1.算法框图在算法设计中,算法框图可以准确、清晰、直观地表达解决问题的思路和步骤.2.算法的两种结构顺序结构选择结构定义按照步骤依次执行的一个算法,称为具有“顺序结构”的算法,或者称为算法的顺序结构在算法流程中,需要进行判断,判断的结果决定后面的步骤,像这样的结构通常称作选择结构图形表示3.基本框图及其表示的功能图形符号名称功能终端框(起止框)表示一个算法的起始和结束输入、输出框表示一个算法输入和输出的信息判断框判断某一个条件是否成立,成立时在出口处标明“是”;不成立时标明“否”处理框赋值、计算流程线连接图框[双基自测]1.任何程序框图中都不可缺少的是( )A.输入框B.处理框C.判断框D.起止框解析:任何一个算法都有开始和结束,因而任何程序框图必须有起止框.答案:D2.在程序框图中,算法中间要处理数据或计算,可分别写在不同的( )A.处理框中B.判断框内C.输入、输出框内D.终端框内解析:根据程序框图中各图形符号的作用,知A选项正确.答案:A3.如图所示的算法框图中,输入a 1=3,a2=4,则输出的结果是( )A.12 B.7C.34 D.43解析:∵a1=3,a2=4,∴b=a1a2=3×4=12.答案:A授课提示:对应学生用书第26页探究一顺序结构的算法框图[典例1] 已知点P(x0,y0)和直线l:Ax+By+C=0,求点P(x0,y0)到直线l的距离d,写出该问题的一个算法,并画出算法框图.[解析] 算法如下:1.输入点的坐标x0,y0及直线方程的系数A,B,C;2.计算z1=Ax0+By0+C;3.计算z2=A2+B2;4.计算d=|z1| z2;5.输出d.算法框图如图所示:顺序结构只须严格按照传统的解决数学问题的解题思路,将问题解决掉.最后将解题步骤“细化”就可以.“细化”指的是写出算法步骤、画出算法框图.1.阅读如图所示的程序框图,根据程序框图和以下各小题的条件解决问题.(1)若输入x的值分别是0和-1时,输出y的值分别是2和5,试求a,b的值.(2)在(1)的条件下,要使输出的y的值不小于11,应使输入的x的值在什么X围内?解析:(1)依题意可得⎩⎪⎨⎪⎧a+b=2,2a+b=5,解得⎩⎪⎨⎪⎧a=3,b=-1.(2)由(1)知y=3·⎝⎛⎭⎪⎫12x-1,因此当输出的y的值不小于11时,有3·⎝⎛⎭⎪⎫12x-1≥11,即⎝⎛⎭⎪⎫12x≥4,解得x≤-2.即输入的x的值的X围是(-∞,-2].探究二选择结构的算法框图[典例2] 已知函数y=⎩⎪⎨⎪⎧-1 (x>0),0 (x=0),1 (x<0).写出求该函数函数值的算法并画出算法框图.[解析] 算法步骤如下:1.输入x.2.如果x>0,那么使y=-1;如果x=0,那么使y=0;如果x<0,那么使y=1;3.输出函数值y.算法框图如图所示:(1)设计算法框图时,首先设计算法分析(自然语言),再将算法分析转化为算法框图(图形语言).如果已经非常熟练地掌握了画算法框图的方法,那么可以省略算法分析直接画出算法框图.在设计算法框图时,对于算法中分类讨论的步骤,通常设计成选择结构来解决. (2)在处理分段函数问题的过程中,当x 在不同的X 围内取值时,函数解析式不同,因此当给出一个自变量x 的值时,必须先判断x 的取值X 围,所以在算法框图中需要设计选择结构.2.已知函数y =⎩⎪⎨⎪⎧log 2x , x ≥2,2-x , x <2.如图所示的是给定x 的值,求其对应的函数值y 的程序框图.①处应填写________;②处应填写________. 解析:由框图可知只要满足①中的条件,则对应的函数解析式为y =2-x ,故此处应填写x <2,则②处应填写将log 2x 记为y . 答案:x <2 将log 2x 记为y探究三 算法框图的实际应用[典例3] 设计房租收费的算法,其要求是:住房面积90 m 2 以内,每平方米收费3元;住房面积超过90 m2时,超过部分,每平方米收费5元.画出算法框图,要求输入住房面积数,输出应付的房租.[解析] 算法如下:1.输入住房面积S.2.根据面积选择计费方式:若S≤90,则租金为M=S×3;若S>90,则租金为M=270+(S-90)×5.3.输出房租M的值.算法框图如图所示:对于实际问题的算法,解决的关键是读懂题意,建立合适的模型,找到问题的计算公式,然后选择合适的算法结构表示算法过程.3.根据有关规定,从2019年1月1日起,某市儿童乘坐汽车免票标准按新标准执行.若儿童身高不超过1.2 m则免票;若身高超过1.2 m,但不超过1.5 m,可买半票;若超过1.5 m,则应买全票,试设计一个购票的算法,并画出相应的程序框图.解析:算法步骤如下:第一步,输入一个身高h.第二步,判断h≤1.2是否成立,若是,输出“免费乘车”并结束;否则执行第三步.第三步,判断h≤1.5是否成立,若是,输出“半票乘车”并结束;否则输出“全票乘车”并结束,程序框图如图所示:选择结构中应用题的解答[典例] (本题满分12分)试设计算法和程序框图,解关于x 的方程ax +b =0(a ,b 为常数).[规X 解答] 算法步骤如下:1.输入a ,b 的值.…………………………………………………………………2分2.判断a =0①是否成立,若成立,则执行第3步;若不成立,则令x =-b a,输出x ,结束算法.……………………………………………………………………4分3.判断b =0②是否成立,若成立,则输出“方程的解为R ”,结束算法;若不成立,则输出“无解”,结束算法.……………………………………………6分 程序框图为:……………………………………………………………………………………12分 [规X 与警示] (1)①处易漏掉a =0,失分点; ②处漏掉此步,得分减半,关键点.(2)在解含参数的方程时,常需要讨论,当方程两边同除以含参数的式子时,需按该式的值是否为0分类讨论.(3)分类讨论的关键是确定分类的标准,另外讨论要做到不重不漏,如本题中的分类标准为a 能否取0.[随堂训练]对应学生用书第27页1.如图,是某算法流程图的一部分,其算法的逻辑结构为( )A.顺序结构B.判断结构C.选择结构D.以上都不对解析:由选择结构的特点可知.答案:C(第1题图) (第2题图)2.阅读如图所示的程序框图,若输出S的值为-7,则判断框内可填写( )A.i<3 B.i<4C.i<5 D.i<6初始值第一次循环第二次循环第三次循环S 21-2-7i 1357当S=-7答案:D3.关于算法框图的图形符号的理解,正确的有________.①任何一个算法框图都必须有起止框;②输入框只能放在开始框之后,输出框只能放在结束框前;③判断框是唯一具有超过一个退出点的图形符号;④对于一个程序来说,判断框内的条件是唯一的.解析:输入框可以放在需要输入的任何地方,所以②错;判断框内的条件不一定是唯一的,所以④错.答案:①③4.阅读如图所示的程序框图,回答问题:若a=50.6,b=0.65,c=log0.55,则输出的数是a,b,c中的________.解析:因为50.6>1,0<0.65<1,log0.55<0,所以三个数中a最大,故应填a.答案:a。

浙江高中算法与程序设计学生活动手册答案

浙江高中算法与程序设计学生活动手册答案

浙江省普通高中算法与程序设计学生活动手册参考答案目录实践一 (2)操作提示 (2)相关练习 (2)实践二 (2)操作提示 (2)相关练习 (2)实践三 (3)相关练习 (3)实践四 (3)操作提示 (3)相关练习 (3)实践五 (3)操作提示 (3)相关练习 (4)实践六 (4)操作提示 (4)相关练习 (4)实践七 (5)操作提示 (5)相关练习 (5)实践八 (5)操作提示 (5)相关练习 (6)实践九 (6)操作提示 (6)相关练习 (6)实践十 (7)操作提示 (7)相关练习 (7)实践十一 (7)操作提示 (7)相关练习 (7)实践十二 (8)操作提示 (8)相关练习 (8)实践十三 (9)操作提示 (9)相关练习 (9)编辑仓促,难免有误,仅供参考,欢迎讨论!——杜宗飞实践一操作提示(1)s=πR12-πR22(3)Const PI = 3.14 S= PI*R1^2- PI*R2^2相关练习(1)A 、(2)B、(3)求2+4+6+……+102的和(4)①(a+5)^2-5 ②(2*x^2-x*y+y^2)/x ③g*t^2+v*t (5)①Const FEE=28 ②Dim b As Double, x As Double ③x = FEE + (b - 150) * 0.25实践二操作提示(4)True False相关练习(1)b^2-4*a*c (-b+sqr(d))/(2*a) (-b-sqr(d))/(2*a) d=0 (2)C(3)The 修改为Then实践三相关练习(1)①Sqr(Abs(x+y)/2) ②Abs(b-a+a)-Abs(-2*a) ③Log(5)/Log(10) (2)D(3)C(4)C(5)B实践四操作提示(4)b <= 20 Else 或ElseIF b >35 Then相关练习(1)C(2)a = c实践五操作提示(4)Mid(s,i,1) Chr(Asc(a)-10)相关练习(1)B(2)D(3)i=1 k=d(i)(4)6 注意:该程序实现的功能是求最大子序列和实践六操作提示(1)每个明文有相应的密文内码加10得到(2)M id(x,j,1) Chr(Asc(b)+10)(4)j = 1 c=Chr(Asc(b)+10) j = j+1相关练习(1) 31 3*n+1(2) i=1 If d(i)<min Then min=d(i)(3) sum=sum+i Text2.Text=Str(sum)实践七操作提示(4)year >= 1 And year <= 9999 And mont >= 1 And month <=12 leap(year) 或leap(year)= TrueNot leap(year) 或leap(year)= False相关练习(1) 6 求2个数的最大公约数注意:该程序使用更相减损法求最大公约数,此外还可以通过欧几里得算法求解(2)a*1000+b*100+c*10+d或a & b & c & d 或Val(Str(a)+ Str(b) +Str(c) +Str(d))实践八操作提示(2)n – 1 False(4)i = 1 To n IsPrime(i) 或IsPrime(i)= True相关练习(1) y=26-x 8*x-y*5=0或8*x=y*5(2) True m mod i=0 p1=True And p2=True 或p1 And p2p2 (或s(i))实践九操作提示(4)Text3.Text ai*(i-1)/(2*i-1) Str(pai*2)(6)Text4.Text a^2+b^2 s=s+1 Str(4*s/n)注意:理解该题需要知道解析几何知识和简单概率论知识相关练习(1)[0,1) Int(Rnd*10+1) 或Int(Rnd*10)+1(2) 0 2 s=s+i(3) 500 s<800或s<=800 s*(1+0.003) y+1注意:前两个空填5000000 s<8000000 亦可实践十操作提示(3)1 To n – 1 n To i + 1 d(j) = d(j-1)相关练习(1)将小于<改成大于>即可If d(j)<d(j-1) Then 改成If d(j)>d(j-1) Then(2)164 168 172 175 185 178164 168 172 175 178 185164 168 172 175 178 185164 168 172 175 178 1855 3 15实践十一操作提示(3)1 To n – 1 i i + 1 To n min <> i相关练习(1) s或30 k=i i+1 d(j)>d(k) s(或30)(3) C(4) n*(n-1)/2 升序0 无序n-1 少快注意:选择排序最差情况是某种无序下:比如6 1 4 5 7实践十二操作提示(1)i <= n d(i) = lSearch i = i +1(5)lMax = d(i) lMin=d(i) Abs(lAvg-d(i)) < lSub注意:此题变量i初值为2 更加合理。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Select S
Case S<100
P=32
Case S<200
P=28
Case S<300
P=25
Case S<400
P=22.5
Case S<1000
P=20
Case S>=1000
P=15
End Select
T=P*M
Print “T=”;T
2、cj=val(inputbox(“请输入成绩”))
高中算法与程序设计实践指导参考答案(第二章)
第一节可视化程序开发工具(P10-P11)
一、选择题:
1 2 3 4 5 6
c B b a b a
二、填空题:
1、设计程序界面、编写程序代码、调试运行程序
2、文本框、按钮、标签、定时器
3、Caption、Font、Top、Width
1、-2 abs(i)
2、(i-1)
3、0 100 i+1
第十节 程序的基本结构(四)(P50-P52)
一、选择题:
1 2 3 4
b c c c
二、完善程序:
第一种:
<= s+n n+1
第二种:
s+n n+1 >100
三、 编程题:

形成性测试题七(P52-P54)
一、选择题:
A=56
Rem 给A赋值54
或A=56 ’ 给A赋值54
三、请写出下列程序的输出结果:
1、VB
VB VB
2、姓名 语文 数学 总分
四、请找出下列程序的错误并修改:
三个错误:
r=2:pi=3.14:x=-3:y=1.2
a1=r*r*ji ’将ji改成pi
a2=(64-6y)+3*x ’将6y改成6*y
改正:dim x as string
3、错误1:x定义成了整型,而x=”y”,却给变量x赋的字符型数据。
错误2:Rem赋值语句要单占一行
改正:
dim x as string
x=”y” ’赋值语句
4、const将x定义成了常量,不能再进行赋值
改正:将const去掉
五、完善程序:
1、val
2、Val 3*x-1 y
3、1 Val b*b-4*a*c
4、<0 else “无实数根”
5、and <>
第八节 程序的基本结构(二)(P39)
一、 请求出下列程序的运行结果:
2432
二、 编程题:
1、S=val(inputbox(“请输入距离”))
M=val(inputbox(“请输入货物重量”))
3、100 next i
4、0 -1 s+(-1)^i*I
s = 1
For i = 2 To 64
s = s * 2
Next i
t = s / 5000
Print t
2、
For i = 1 To 9
If i <= 5 Then
Print Tab(20 - i * 3);
Select cj
Case cj>89
Dd=”A”
Case cj>79
Dd=”B”
Case cj>69
Dd=”C”
Case cj>59
Dd=”D”
Case else
Dd=”E”
End select
Print Dd
形成性测试题五(P39-P42)
一、 写出运行下列程序段后的显示结果:
Dim py As String
a = Val(Text1.Text)
If a > 0 Then py = "正数"
If a = 0 Then py = "零"
If a < 0 Then py = "负数"
Label1.Caption = py
End Sub
四、完善程序
1、Val 5*x-3
③不合适,c的值26不是字符型数据,应改为Dim c as integer
数据的表示与处理(二)(P15-P16)
一、选择题:
1 2 3 4
a a b c
二、填空题:
1、=、<、>、<=、>=、<>、True、False
2、True、True、False、True、False
3、日期型、数值型、数值型、字符串型、布尔型、字符串型
For j = 1 To i * 2 - 1
Print i;
Next j
Print
Else
Print Tab((Abs(5 - i) * 3) + 5);
For j = 1 To (9 - i) * 2 + 1
Print i;
Next j
Print
End If
Next i
形成性测试题六(P46-P49)
①2008
②8
③18
④15
⑤30
⑥10
三、请写出下列程序的运行结果:
1、
1 2 3
1 2 3
2、
1 2 3
1 2 3
3、
1 2 3 1 2 3
4、5
四、请找出下列程序的错误并修改:
1、const将x定义成了常量,不能再进行赋值
改正:将const去掉
2、x定义成了整型,而x=”y”,却给变量x赋的字符型数据。
附:18和19题感觉是多选
二、判断题:
错、对、错、错、对、对、对
三、简答题:

第四节 数据的表示与处理(三)(P19-P20)
一、选择题:
1 2 3 4 5
b d c d B
二、填空题:
1、对象名.属性名=表达式
2、Text1.Text = "Hello"
3、变量=表达式
4、rem、’、
3、a+b^2
4、exp(x+1)
5、交互
6、+、-、*、/、^
7、将x+0.5的和进行取整、
随机产生0-90之间的数,然后取整,再加上10。也就是随机产生个两位数。
第六节 数据的表示与处理(五)(P24-P26)
一、选择题:
1 2 3 4
c c d a
二、请写出下列函数的值:
5、4A、M.N、Dim、For 、a 3
6、(a+b)*(a-b)、(a+b)*(a+b)、(a+b)/(c+d)、(2*(a+b))/(2*(a-b))、(sqr(2*a+1)/(2*(a-b)、sqr((1+cos(a))/(1-sin(a)))
7、1/2a2 、(2x+3y)n、1/2gt2、(2+3x)/6+y、ax2+bx+c、8-4y/5x-b、(a+b)c/d、2((x-3)-y)/6+z
1、12
2、n=26
3、m=1
4、 ‘此题无输出
5、20
二、完善程序:
1、abs(3*x-5) y
2、>=100 不成功
3、正数 零 < py
第九节 程序的基本结构(三)(P44-P46)
一、选择题:
1 2 3 4
a c b b A
二、完善程序:
1、6 i “*”;
2、i 6 “*”;
a3=a2/5
print a1+a2+a3 ’将+a2去掉
第五节 数据的表示与处理(四)(P23)
1、写出下列函数表达式的值:
Abs(-10)=10 int(3.2+5.1)=8
Exp(5)= 148.413159102577 sgn(-100)=-1
Sgn(0)=0 tan(pi/4)=0
1、abc
2、efg
3、bc
4、cd
5、7
三、请写出下列程序的运行结果:
1、20008
2、4016
3、m
4、5
形成性测试题三(P26-P29)
一、选择题:
1 2 3 4 5 6 7
a b c a a c d
二、填空题:
1、求下列表达式的值。
①abcde
②defg
1 2 3
c c c
二、写出下面程序的运行结果:
1、s=5151
2、
输入:10 输出:
输入:55 输出:55
输入:23 输出:
输入:37 输出:37
输入:-19 输出:
输入:0 输出:
三、完善程序:
1、<=100 2 x
2、2 x s<100 x
Int(5.3+0.5)=5 abs(3.2-10)=6.8
Abs(int(3.4-7.2))=4 sqr(abs(-6)+10)=4
Sqr((-2)^2)= 2 int(-3.6)=-4
Log(exp(4))=4 log(exp(-3))=-3
2、写出下列表达式的值:100美元、VisualBasic
相关文档
最新文档