压缩包目录
-
全部
- 【优化方案】2016年高中数学 第一章 算法初步 1.1.1算法的概念学案 新人教A版必修3.doc
- 【优化方案】2016年高中数学 第一章 算法初步 1.1.2第1课时顺序结构、条件结构学案 新人教A版必修3.doc
- 【优化方案】2016年高中数学 第一章 算法初步 1.1.2第2课时循环结构学案 新人教A版必修3.doc--点击预览
- 【优化方案】2016年高中数学 第一章 算法初步 1.2.1输入语句、输出语句和赋值语句学案 新人教A版必修3.doc--点击预览
- 【优化方案】2016年高中数学 第一章 算法初步 1.2.2、2.3循环语句学案 新人教A版必修3.doc--点击预览
- 【优化方案】2016年高中数学 第一章 算法初步 1.3算法案例学案 新人教A版必修3.doc--点击预览
- 【优化方案】2016年高中数学 第一章 算法初步 章末优化总结学案 新人教A版必修3.doc--点击预览
- 【优化方案】2016年高中数学 第一章 算法初步 章末演练轻松闯关学案 新人教A版必修3.doc--点击预览
文件预览区
|
|
资源描述
- 1 -第 2 课时 循环结构1.问题导航(1)什么是循环结构、循环体?(2)循环结构可细分为哪两类?它们有什么相同点和不同点?(3)什么情况下,可以使用循环结构?(4)循环结构与条件结构有什么关系?2.例题导读通过对例 6 的学习,学会当算法过程中包含重复存在的步骤时,可以用循环结构表示,同时学会循环结构的两类表示:一类是当型循环结构,另一类是直到型循环结构;通过对例 7 的学习,学会按照“确定循环体” “初始化变量” “设定循环控制条件”的顺序来构造循环结构.1.循环结构的概念及相关内容(1)循环结构:按照一定的条件反复执行某些步骤的情况.(2)循环体:反复执行的步骤.2.循环结构的分类及特征名称 直到型循环 当型循环结构特征先执行循环体,后判断条件,若条件不满足,就继续执行循环体,直到条件满足时终止循环.先判断条件,若条件满足,则执行循环体,否则终止循环.1.判断下列各题.(对的打“√” ,错的打“×”)(1)程序框图中的循环可以是无尽的循环;( )(2)循环结构是在一些算法中从某处开始按照一定条件,反复执行某一处理步骤,故循环结构中一定包含条件结构;( )(3)循环结构中不一定包含条件结构.( )解析:程序框图中的循环,必须是有限循环;循环结构一定包含条件结构.答案:(1)× (2)√ (3)×2.下面的框图是循环结构的是( )- 2 -A.①② B.②③C.③④ D.②④解析:选 C.由循环结构的特点知③④是循环结构,其中①是顺序结构,②是条件结构.3.运行如图所示的程序框图,输出的结果为________.解析:n=1; S=1+0=1, n=2; S=3, n=3; S=6, n=4; S=10, n=5; S=15, n=6; S=21, n=7; S=28, n=8.答案:284.举例说明循环结构适用哪些常见的计算?解:循环结构主要用在一些有规律的重复计算中,如累加求和,累乘求积等问题.1.算法的基本逻辑结构有三种,即顺序结构、条件结构和循环结构.其中顺序结构是最简单的结构,也是最基本的结构,循环结构必然包含条件结构,所以这三种基本逻辑结构是相互支撑的,它们共同构成了算法的基本结构,无论怎样复杂的逻辑结构,都可以通过这三种结构来表达.2.两种循环结构的相同点:从两种不同形式的循环结构可以看出,循环结构中一定包含条件结构,用于确定何时终止执行循环体.3.如果算法问题里涉及的运算进行了许多次重复的操作,且先后参与运算的数之间有相同的规律,就可引入变量循环参与运算(我们称之为循环变量),应用于循环结构.在循环结构中,要注意根据条件设计合理的计数变量、累加和累乘变量等,特别要求条件的表述要恰当、精确.循环结构程序框图的设计设计一个算法,求 13+2 3+…+99 3+100 3的值,并画出程序框图.(链接教材 P13例 6)- 3 -[解] 算法如下:第一步,使 S=0.第二步,使 I=1.第三步,使 S= S+ I3.第四步,使 I= I+1.第五步,若 I≤100,则返回第三步;否则,输出 S,算法结束.程序框图如图所示.方法归纳(1)如果算法问题中涉及的运算进行了多次重复的操作,且先后参与运算的数之间有相同的变化规律,就可以利用循环结构设计算法解决.(2)本题易错点是初始值与计数变量的取值;在循环结构中,要注意根据条件设计合理的计数变量、累加变量和累乘变量等,条件的表述一定要恰当、精确,累加变量的初始值一般取 0,而累乘变量的初始值一般取 1.1.(1)如图所示程序框图输出的结果是( )A.8 B.9 C.10 D.11解析:选 D.当 i=11 时,不满足条件即输出.(2)设计求 1×2×3×4×…×2 015 的程序框图.解:程序框图如图所示:- 4 -利用循环结构求满足条件的数值求满足 1+ + + +…+ 2 的最小正整数 n,写出算法,并画出程序框图.12 13 14 1n[解] 算法如下:第一步, S=0;第二步, i=1;第三步, S= S+ ;1i第四步, i= i+1;第五步,若 S>2,则输出 i-1,否则返回第三步,循环结束.程序框图如图所示:[互动探究] 若将本例中的 改为 ,其他条件与结论都不变,那么,算法与程序框图1n 1n2需要怎样变化?解:算法与程序框图中,都将“ S= S+ ”改为“ S= S+ ”.1i 1i2方法归纳求满足条件的最值问题的实质及注意事项:(1)实质:利用计算机的快速运算功能,对所有满足条件的变量逐一测试,直到产生第一个(不)满足条件的值时结束循环.(2)注意事项:- 5 -①要明确数字的结构特征,决定循环的终止条件与数的结构特征的关系及循环次数.②要注意要统计的数出现的次数与循环次数的区别.③要特别注意判断框中循环变量的取值限制,是“” “50 000 的最小正整数 n.答案:求满足 1×3×5×7×…×n50 000 的最小正整数 n(2)已知 1+2+3+4+…+ i≤200,画出求 i 的最大值的程序框图.解:程序框图如图所示.循环结构的实际应用某工厂 2014 年生产小轿车 200 万辆,技术革新后预计每年的生产能力比上一年增加 5%,问最早哪一年该厂生产的小轿车数量超过 300 万辆?写出解决该问题的一个算法,并画出相应的程序框图.[解] 算法如下:第一步,令 n=0, a=200, r=0.05;第二步, T= ar(计算年增量);- 6 -第三步, a= a+ T(计算年产量);第四步,如果 a≤300,那么 n= n+1,返回第二步;否则执行第五步;第五步, N=2014+ n;第六步,输出 N.程序框图如图所示:方法归纳(1)在解决实际问题时,关键是读懂题目,建立合适的模型,找到问题的计算公式.例如本题中 T=200(1+5%) n.然后再去设计算法,画出程序框图.(2)设计一个程序框图算法的一般步骤:①用自然语言表述算法步骤;②确定每一个算法步骤所包含的逻辑结构,并用相应的程序框图表示,得到表示该步骤的程序框图;③将所有步骤的程序框图用流程线连接起来,并加上终端框,得到表示整个算法的程序框图.3.(1)小红今年 12 岁,她父亲比她大 25 岁,设计程序框图,计算出几年后她父亲比她的年龄大一倍,那时他们两人的年龄各是多少?解:程序框图如图所示.- 7 -(2)某城市现有人口总数为 100 万人,如果年自然增长率为 1.2%,试解答下列问题:①写出该城市人口数 y(万人)与年份 x(年)的函数关系式;②用流程图表示如下算法:计算大约多少年以后该城市人口将达到 120 万人.解:① y=100(1+1.2%) x;②程序框图如图:易错警示 忽视初始值以及循环终止条件致误画出求 S=1 4+2 4+3 4+…+10 4的程序框图.[解] 程序框图如图所示:- 8 -[错因与防范](1)本题易出现累加和 S 的初始值为 1,循环终止条件为 i20,满足要求,输出 n=5.答案:5[A.基础达标]1.一个完整的程序框图至少包含( )A.起止框和输入、输出框- 11 -B.起止框和处理框C.起止框和判断框D.起止框、处理框和输入、输出框解析:选 A.一个完整的程序框图至少包括起止框和输入、输出框,故选 A.2.(2015·安徽巢湖检测)如图所示是一个循环结构的算法,下列说法不正确的是( )A.①是循环变量初始化,循环就要开始B.②为循环体C.③是判断是否继续循环的终止条件D.①可以省略不写解析:选 D.①为循环变量初始化,必须先赋值才能有效控制循环,不可省略.故选 D.3.执行如图所示的程序框图,输出的 S 值为( )A.2 B.4C.8 D.16解析:选 C.框图执行如下: k=0, S=1; S=1, k=1; S=2, k=2; S=8, k=3.所以输出 S 的值为 8.4.(2014·高考安徽卷)如图所示,程序框图(算法流程图)的输出结果是( )A.34 B.55C.78 D.89解析:选 B.当输入 x=1, y=1,执行 z= x+ y 及 z≤50, x= y, y= z 后,x, y, z 的值依次对应如下:x=1, y=1, z=2;x=1, y=2, z=3;- 12 -x=2, y=3, z=5;x=3, y=5, z=8;x=5, y=8, z=13;x=8, y=13, z=21;x=13, y=21, z=34;x=21, y=34, z=55.由于 55≤50 不成立,故输出 55.故选 B.5.执行如图所示的程序框图,若 m=5,则输出的结果为( )A.4 B.5C.6 D.8解析:选 B.由程序框图可知, k=0, P=1.第一次循环:因为 k=0<5,所以 P=1×3 0=1, k=0+1=1.第二次循环:因为 k=1<5,所以 P=1×3 1=3, k=1+1=2.第三次循环:因为 k=2<5,所以 P=3×3 2=3 3, k=2+1=3.第四次循环:因为 k=3<5,所以 P=3 3×33=3 6, k=3+1=4.第五次循环:因为 k=4<5,所以 P=3 6×34=3 10, k=4+1=5.此时满足判断框内的条件,输出结果为 z=log 9 310=5.故选 B.6.(2014·高考天津卷)阅读如图所示的框图,运行相应的程序,输出 S 的值为________.解析: S=0, n=3, S=0+(-2) 3=-8,n=3-1=2≤1 不成立;故 S=-8+(-2) 2=-4,n=2-1=1≤1 成立.故输出 S 的值为-4.答案:-47.(2015·临沂调研)如果执行如图所示的程序框图,输入 x=4.5,则输出的数i=________.- 13 -解析:第一次执行循环体时, i=1, x=3.5;第二次执行循环体时, i=2, x=2.5;第三次执行循环体时, i=3, x=1.5;第四次执行循环体时, i=4, x=0.5<1.输出 i=4,结束.答案:48.执行如图所示的程序框图,若输出的 a 值大于 2 015,那么判断框内的条件应为________.解析:第一次循环: k=1, a=1,满足条件,所以 a=4×1+3=7, k=1+1=2.SGKS87 第二次循环: a=7<2 015,故继续循环,所以 a=4×7+3=31, k=2+1=3.第三次循环: a=31<2 015,故继续循环,所以 a=4×31+3=127, k=3+1=4.第四次循环: a=127<2 015,故继续循环,所以 a=4×127+3=511, k=4+1=5.第五次循环: k=511<2 015,故继续循环,所以 a=4×511+3=2 047, k=5+1=6.由于 a=2 047>2 015,故不符合条件,输出 a 值.所以判断框内的条件是“ k≤5?” .答案: k≤5?9.设计一个算法,求表达式 12+2 2+3 2+…+10 2的值,并画出程序框图.解:算法如下:第一步,令 S=0, i=1.第二步,判断 i 是否小于或等于 10,若是,则执行第三步;若否,则输出 S.第三步,令 S= S+ i2,并令 i= i+1,然后返回第二步.程序框图如图:- 14 -10.有一列数 1,1,2,3,5,8,…,其规律是从第 3 个数开始,后一个数等于前两个数的和,画出计算这列数前 20 个数的和的程序框图.解:程序框图如图所示:[B.能力提升]1.(2014·高考北京卷)执行如图所示的程序框图,输出的 S 值为( )A.1 B.3C.7 D.15解析:选 C.S=2 0+2 1+2 2=7.2.(2014·高考福建卷)阅读如图所示的程序框图,运行相 应的程序,输出的 n 的值为( )A.1 B.2C.3 D.4- 15 -解析:选 B.当 n=1 时,2 112满足条件,继续循环得 n=2,2 222不成立,不满足条件,所以输出 n=2.3.(2014·高考湖北卷)阅读如图所示的程序框图,运行相应的程序,若输入 n 的值为9,则输出 S 的值为________.解析:由题意,程序运行如下:k=1<9, S=2 1+1=3, k=2<9; S=3+2 2+2=9, k=3<9;S=9+2 3+3=20, k=4<9; S=20+2 4+4=40, k=5<9;S=40+2 5+5=77, k=6<9; S=77+2 6+6=147, k=7<9;S=147+2 7+7=282, k=8<9; S=282+2 8+8=546, k=9≤9;S=546+2 9+9=1 067, k=10>9,输出 S=1 067,程序结束.答案:1 0674.阅读如图所示的程序框图,运行相应的程序,则程序运行后输出的结果为________.解析: i=1, S=0.第一次循环: S=0+lg =-lg 3>-1,继续循环, i=3;13第二次循环: S=-lg 3+ lg =-lg 5>-1,继续循环,35i=5;第三次循环: S=-lg 5+ lg =-lg 7>-1,继续循环,57i=7;第四次循环: S=-lg 7+lg =-lg 9>-1,继续循环, i=9;79第五次循环: S=-lg 9+lg =-lg 11<-1,结束循环,输出 i=9.911答案:95.画出计算 1+ + + +…+ 的值的一个程序框图.13 15 17 12 015解:相加各数的分子都是 1,而分母是有规律递增的,每次增加 2,引入变量 S 表示和,- 16 -计数变量 i, i 的值每次增加 2,则每次循环都有 S= S+ , i= i+2,这样反复进行.1i程序框图如图所示:6.(选做题)设计一个求满足 10x21 000 的所有正整数 x 的值的程序框图.解:可以从最小的正整数 1 开始进行判断,判断是否满足 10x21 000.若满足,则输出x 的值;若不满足,则对 1 进行累加后再进行判断,依次下去,直到 x2≥1 000 为止,结束程序.程序框图如图所示:- 1 -1.2 基本算法语句1.2.1 输入语句、输出语句和赋值语句1.问题导航(1)输入语句的格式是怎样的?其功能是什么?(2)输出语句的格式是怎样的?其功能是什么?(3)赋值语句的格式及功能各是什么?(4)三种语句:输入语句、输出语句、赋值语句与框图有什么对应关系?2.例题导读通过对例 1,2 的学习,学会输入语句、输出语句、赋值语句的基本结构;通过对例 3 的学习,学会给一个变量重复赋值;通过对例 4 的学习,学会交换两个变量的值.1.输入语句(1)格式:INPUT “提示内容” ;变量.(2)功能:实现算法的输入信息功能.2.输出语句(1)格式:PRINT “提示内容” ;表达式.(2)功能:实现算法的输出结果功能.3.赋值语句(1)格式:变量=表达式.(2)功能:将表达式所代表的值赋给变量.1.判断下列各题.(对的打“√” ,错的打“×”)(1)输入语句可以给变量赋值,并且可以同时给多个变量赋值;( )(2)输出语句可以输出常量、变量的值和系统信息,但不能输出有关表达式的计算结果;( )(3)赋值语句:“ y= x”与“ x= y”相同.( )答案:(1)√ (2)× (3)×2.在 INPUT 语句中,如果同时输入多个变量,变量之间的分隔符是( )A.逗号 B.分号C.空格 D.引号解析:选 A.在算法语句中,若同时输入多个变量,变量之间用逗号隔开.3.以下程序- 2 -a= 5a= a*aa= a+ 5PRINT aEND输出的结果为________.解析: a=5×5+5=30.答案:304.怎样理解输入语句与赋值语句的联系与区别?解:(1)联系:输入语句与赋值语句都具有对变量赋值的功能.(2)区别:当变量需要的数据较少或给变量赋予算式时,用赋值语句较好;而当变量需要输入多组数据且要求程序重复使用时,使用输入语句较好,这样即使初始数据改变,也不必改变程序部分.1.输入语句要求(1)输入语句要求输入的值是具体的常量.(2)“提示内容”提示用户输入的是什么信息,必须加双引号,提示内容 “原原本本”地在计算机屏幕上显示, “提示内容”与“变量”之间要用分号隔开.(3)一个输入语句可以给多个变量赋值,中间用“, ”分隔.形式如:INPUT “a=, b=, c=” ; a, b, c2.输出语句要求(1)表达式是指算法和程序要求输出的信息.(2)提示内容提示用户要输出的是什么信息,提示内容必须加双引号,提示内容要用分号和表达式分开.(3)如同输入语句一样,输出语句可以一次完成输出多个表达式的功能,不同的表达式之间可用“, ”分隔.形式如:PRINT “ a, b, c”; a, b, c3.赋值语句要求(1)赋值语句左边只能是变量名字,而不是表达式,右边表达式可以是一个常量、变量或含变量的运算式.如:2= x 是错误的.(2)赋值号的左右两边不能对换.赋值语句是将赋值号右边的表达式的值赋给赋值号左边的变量.如“ A= B”、 “B= A”的含义运行结果是不同的,如 x=5 是对的,5= x 是错的,A+ B= C 是错的, C= A+ B 是对的.(3)不能利用赋值语句进行代数式的演算(如化简、因式分解、解方程等),如y= x2-1=( x-1)( x+1),这是实现不了的.在赋值号右边表达式中每一个变量的值必须事先赋给确定的值.在一个赋值语句中只能给一个变量赋值,不能出现两个或以上的“=” .但对于同一个变量可以多次赋值,且给一个变量重复赋值,变量只保存最后一次赋值.- 3 -输入、输出和赋值语句的格式下列给出的输入、输出语句正确的是( )①输入语句 INPUT a;b;c②输入语句 INPUT x=3③输出语句 PRINT A=4④输出语句 PRINT 20,3*2A.①② B.②③C.③④ D.④[解析] ①INPUT 语句可以给多个变量赋值,变量之间用“, ”隔开;②INPUT 语句中只能是变量,而不能是表达式;③PRINT 语句中不用赋值号“=” ;④PRINT 语句可以输出常量、表达式的值.[答案] D[互动探究] 若将例 1 增加两个赋值语句:⑤10=5+5;⑥6= A,判断其正误.解:⑤错误,赋值语句的形式为:“变量=表达式” , ⑤的左边不是变量,故错误;⑥错误,写反了,应该写成“ A=6” ,那就是正确的赋值语句了.方法归纳输入语句和输出语句是计算机的最基本的也是最基础的程序语言,必须正确理解、准确使用,这就需要准确把握它的作用和一般格式,并且要严格遵循它的一般格式,而不能有半点创新,因为计算机程序语言是十分机械的语言,当然不同程序语言有不同的格式.1.阅读下列程序,并回答问题.(1) INPUT a,bc=a-bb=a+c-bPRINT a,b,cEND(2)INPUT A,B,CA=A+BB=B-AC=C/A*BPRINT C- 4 -END(1)中若输入 1,2,则输出的结果为________;(2)中若输入 3,2,5,则输出的结果为________.解析:(1)阅读程序,由 a=1, b=2, c= a- b 可得 c=-1;又根据语句 b= a+ c- b,可得 b=-2;所以程序运行后的结果为:1,-2,-1.(2)阅读程序,由 A=3, B=2, C=5, A= A+ B,可得 A=5,又根据语句 B= B- A,可得B=-3,又 C= C/A*B,所以输出结果为 C=-3.答案:(1)1,-2,-1 (2)-3利用输入、输出和赋值语句编写程序已知 A(x1, y1), B(x2, y2)是平面上两点,设计一个程序输出线段 AB 的中点 M 的横、纵坐标.(链接教材 P21例 1)[解] 程序如下:INPUT x1,y1,x2,y2x=(x1+x2)/2y=(y1+y2)/2PRINT “点 M 的横坐标为:” ;xPRINT “纵坐标为:” ;yEND方法归纳(1)算术表达式所有符号只能并排地写在一行上,不能出现右上方的幂次或下方的下标如 42, x2等;(2)算术表达式中只能用圆括号,不能使用方括号或花括号,使用多重括号时应注意左右括号的配对关系;(3)由代数式写成算术表达式时应注意保持运算顺序不变,必要时添加括号,如 可A+ BA- B写为( A+ B)/(A- B), π R3可写为 4*3.141 59*R∧ 3/3 等.432.(1)已知直线方程为 Ax+ By+ C=0( A·B≠0),试编写一个程序,要求输入符合条件的 A, B, C 的值,输出该直线在 x 轴、 y 轴上的截距及斜率.解:程序如下:INPUT A,B,CM=(-C)/AN=(-C)/Bk=(-A)/BPRINT “x 轴上的截距为:” ;M- 5 -PRINT “y 轴上的截距为:” ;NPRINT “斜率为:” ;kEND(2)在一次数学考试中,小明、小亮、小强的成绩分别为 a, b, c,后来发现统计错了.小亮的成绩记在了小明的名下,小强的成绩记在了小亮的名下,而小明的成绩记在小强的名下了.请设计程序更正成绩单,并输出更正后的成绩.解:程序如下:INPUT “更正前的成绩” ;a,b,cx=aa=cc=bb=xPRINT “更正后的成绩” ;a,b,cEND算法语句与程序框图根据如图所示的程序框图,写出相应的算法语句.(链接教材 P23例 2)[解] 算法语句如下:INPUT “a=” ;aINPUT “h=” ;hS=SQR(3)*a ∧ 2/4V=S*hC=3*a- 6 -T=C*hP=T+2*SPRINT VPRINT PEND方法归纳由程序框图写算法语句时,对顺序结构的程序框图只需利用输入、输出、赋值语句即可完成.其中输入、输出框对应输入、输出语句,执行框对应赋值语句.3.(1)将下列程序改为框图,并指明其作用.INPUT x1,x2y1=2 ∧ x1y2=2 ∧ x2k=(y1-y2)/(x1-x2)PRINT kEND解:程序框图如下:作用:求过指数函数 y=2 x的图象上两点 A(x1, y1), B(x2, y2)直线的斜率 k.(2)输入 x 的值,输出其平方.①写出算法步骤;②画出程序框图;③编写程序.解:①算法步骤如下:第一步,输入 x.第二步,计算 y= x2.第三步,输出 y.②程序框图如图所示.- 7 -③编写程序如下: INPUT xy= x∧ 2PRINT yEND易错警示 因程序编写中符号不规范致误已知圆台的上、下底面半径和高分别为 r, R, h,写出求圆台的表面积和体积的程序(π 取 3.14).[解] 程序如下:INPUT “r,R,h=” ;r,R,hl=SQR(h ∧ 2+(R-r) ∧ 2)S=3.14*r ∧ 2+3.14*R ∧ 2+3.14*(r+R)*lV=3.14*h*(r ∧ 2+R ∧ 2+r*R)/3PRINT “圆台的表面积为:” ;SPRINT “圆台的体积为:” ;VEND[错因与防范](1)在解题的时候一定要严格按照输入语句的格式书写,输入语句有多个变量时,中间要加“, ”.(2)赋值语句中 要写为 SQR(x),不要用手写形式.x(3)除以 3 要用标准符号语言“/3” .4.(1)试设计已知底面半径 R 和高 H,求圆柱体表面积的程序(取 π=3.141 59).解:程序如下:INPUT “R,H=” ;R,HA=2*3.141 59*R*HB=3.141 59*R ∧ 2S=A+2*BPRINT SEND(2)随着社会经济的高速发展,人口问题已经成为制约社会经济发展的一个重要因素.试设计一个程序,满足以下条件:我国现有人口数为 P,人口的自然增长率为 R,预测T 年之后人口总数是多少?- 8 -解:程序如下:INPUT “我国现有人口数为:” ;PINPUT “人口的自然增长率为:” ;RINPUT “预测时间为(年):” ;TM=(1+R) ∧ TN=P*MPRINT “预测人口总数是:” ;NEND1.赋值语句 N= N+1 的意义是( )A. N 等于 N+1B. N+1 等于 NC.将 N 的值赋给 N+1D.将 N 的原值加 1 再赋给 N,即 N 的值增加 1解析:选 D.赋值语句 N= N+1 的意义是:将 N 的原值加 1 再赋给 N,即 N 的值增加 1.2.下列赋值语句正确的是( )A. S= S+ i2 B. A=- AC. x=2 x+1 D. P= x解析:选 B.在程序语句中乘方要用“ ∧ ”表示,所以 A 不正确;乘号“*”不能省略,所以 C 不正确;D 选项中 应用 SQR(x)表示,所以 D 不正确;B 选项是将变量 A 的相反数赋x给变量 A,则 B 正确.3.当输入“3”后,输出的结果为( )INPUT “请输入 x=” ;xy=xx=y+1x=x+1PRINT xENDA.5 B.4C.3 D.6解析:选 A.程序中只有两个变量 x, y.当程序顺次执行时,先有 y=3,再有x=4, x=5,故最后输出的 x 值为 5.4.阅读下列两个程序,回答问题.①x= 3y= 4x= yPRINT x, yEND ②x= 3y= 4y= xPRINT x, yEND(1)上述两个程序的运行结果是①________;②________.(2)上述两个程序中的第三行有什么区别:________.解析:(1)①中运行 x=3, y=4, x=4,故运行结果是 4,4;同理,②中的运行结果是3,3;(2)程序①中的“ x= y”是将 y 的值 4 赋给 x,赋值后 x 的值变为 4;程序②中的- 9 -“y= x”是将 x 的值 3 赋给 y,赋值后 y 的值变为 3.答案:(1)①4,4 ②3,3(2)程序①中的“ x= y”是将 y 的值 4 赋给 x,赋值后 x 的值变为 4;程序②中的“y= x”是将 x 的值 3 赋给 y,赋值后 y 的值变为 3[A.基础达标]1.利用输入语句可以给多个变量赋值,下面能实现这一功能的语句是( )A.INPUT “A,B,C”a,b,cB.INPUT “A,B,C=” ;a,b,cC.INPUT a,b,c;“A,B,C”D.PRINT “A,B,C” ;a,b,c解析:选 B.提示内容与输入内容之间要用“;”隔开,故 A 错;提示内容在前,输入内容在后,故 C 错;输入语句用“INPUT”而非“PRINT” ,故 D 错.2.(2015·安阳高一检测)下列给出的赋值语句中正确的是( )A. x+3= y-2 B. d= d+2C.0= x D. x- y=5解析:选 B.根据赋值语句特点可知,赋值号左边应该是一个变量,不能是常数或多个变量,更不能带有运算,故 A,C,D 错误.B 项含义是把 d+2 的值赋给 d,是正确的.3.下面的程序输出的结果是( )x= 6y= 3x= x/3y= 4*x+ 1PRINT x+ yENDA.27 B.9C.2+25 D.11解析:选 D.该程序的运行过程是x=6,y=3,x=6÷3=2,y=4×2+1=9,x+ y=2+9=11.所以输出 11.4.将两个数 a=8, b=17 交换,使 a=17, b=8,下面语句正确的一组是( )A. B.a= bb= a c= bb= aa= cC. D.b= aa= b a= cc= bb= a解析:选 B.由赋值语句的意义知 B 正确.5.程序输出的结果 A 是( )- 10 -INPUT “A=” ;1A=A*2A=A*3A=A*4A=A*5PRINT AENDA.5 B.6C.15 D.120解析:选 D.该程序输出的结果为 A=1×2×3×4×5=120.6.以下程序运行时输出的结果是________.A= 3B= A*AA= 2*A+ BB= B- APRINT A, BEND解析:根据赋值语句,当 A=3 时,先把 A*A=3×3=9 的值赋给 B,即 B=9,再把2*A+ B=2×3+9=15 的值赋给 A,即 A=15,最后再把 B- A=9-15=-6 的值赋给 B,即B=-6.答案:15,-67.(2015·郑州高一检测)下面一段程序执行后的结果是________.A= 2A= A*2A= A+ 6PRINT AEND解析:执行第 2 句时 A=2×2=4,执行第 3 句时 A=4+6=10.答案:108.读如下两个程序,完成下列题目.程 序 ( 1) :x= 1x= x*2x= x*3PRINT xEND 程 序 ( 2) :INPUT xy= x*x+ 6PRINT yEND(1)程序(1)的运行结果为________.(2)若程序(1),(2)运行结果相同,则程序(2)输入的 x 的值为________.解析:赋值语句给变量赋值时,变量的值总是最后一次所赋的值,故程序(1)中 x 的值最后为 6.要使程序(2)中 y 的值为 6,即 x2+6=6,故 x=0.即输入的 x 的值为 0.答案:(1)6 (2)09.2015 年春节期间,某水果店的三种水果标价分别为香蕉:2 元/千克,苹果:3 元/千克,梨:2.5 元/千克.请你设计一个程序,以方便店主的收款.解:程序如下:INPUT a,b,cx=2*ay=3*b- 11 -z=2.5*cS=x+y+zPRINT SEND10.某市 2014 年 1~12 月的产值分别是3.8,4.2,5.3,6.1,6.4,5.6,4.8,7.3,4.5,6.4,5.8,4.7(单位:亿元),试设计一个可计算出该市 2014 年各季度的月平均产值及 2014 年的月平均产值的程序.解:程序如下:INPUT a1,a2,a3,b1,b2,b3,c1,c2,c3,d1,d2,d3S1=a1+a2+a3S2=b1+b2+b3S3=c1+c2+c3S4=d1+d2+d3V1=S1/3V2=S2/3V3=S3/3V4=S4/3V=(S1+S2+S3+S4)/12PRINT V1,V2,V3,V4,VEND[B.能力提升]1.“x=3*5” , “x=x+1”是某一程序先、后相邻的两个语句,那么下列说法正确的是( )①x=3*5 的意思是 x=3×5=15.此式与算术中的式子是一样的;②x=3*5 是将数值 15 赋给 x;③x=3*5 可以写为 3*5=x;④x=x+1 语句在执行时“=”右边 x 的值是 15,执行后左边 x 的值是 16.A.①③ B.②④C.①④ D.②③解析:选 B.赋值语句中的“=”与算术中的“=”是不一样的,式子两边的值也不能互换,从而只有②④正确,故选 B.2.给出下列程序:INPUT “实数:” ;x1,y1,x2,y2a=x1-x2m=a ∧ 2b=y1-y2n=b ∧ 2s=m+nd=SQR(s)PRINT dEND此程序的功能为( )- 12 -A.求点到直线的距离B.求两点之间的距离C.求一个多项式函数的值D.求输入的值的平方和解析:选 B.输入的四个实数可作为两个点的坐标.程序中的 a, b 分别表示两个点的横、纵坐标之差,而 m, n 分别表示两点横、纵坐标之差的平方; s 是横、纵坐标之差的平方和,d 是平方和的算术平方根,即两点之间的距离,最后输出此距离.3.下面程序的运行结果为________.a=2b=3c=4a=bb=c+2c=b+4d=(a+b+c)/3PRINT dEND解析:程序执行的过程为: a=2, b=3, c=4→ a=3→ b=4+2=6→ c=6+4=10→ d=(3+6+10)= ,输出 .13 193 193答案:1934.下面程序的功能是求所输入的两个正数的平方和,已知最后输出的结果是 3.46,则此程序中,①处应填________;②处应填________.INPUT “x1=” ;1.1INPUT “x2=” ;①S=②PRINT SEND解析:由于程序的功能是求所输入的两个正数的平方和,所以 S= x + x ,由于最后输21 2出的数是 3.46,所以 3.46=1.1 2+ x ,即 x =2.25,又 x20,所以 x2=1.5.2 2答案:1.5 x1∧ 2+ x2∧ 25.中秋节到了,糕点店的售货员很忙,请设计一个程序,帮助售货员算账,已知豆沙馅的月饼每千克 25 元,蛋黄馅的月饼每千克 35 元,莲蓉馅的月饼每千克 30 元,那么依次购买这三种月饼 a、 b、 c 千克,应收多少钱?解:程序如下:INPUT “a=” ;aINPUT “b=” ;bINPUT “c=” ;cy=a*25+b*35+c*30PRINT “应收糕点钱” ;yEND- 13 -6.(选做题)已知函数 f(x)= x2-1, g(x)=3 x+5.用算法语句表示求 f[g(2)]+ g[f(3)]的值的算法.解:程序如下:x=2g=3*x+5f=g ∧ 2-1y1=fx=3f=x ∧ 2-1g=3*f+5y2=gy=y1+y2PRINT yEND- 1 -1.2.2 条件语句1.2.3 循环语句1.问题导航(1)条件语句的格式是怎样的?(2)程序中的条件语句与程序框图中的条件结构有什么关系?(3)循环语句可细分为哪两类?格式分别是怎样的?它们有什么相同点和不同点?(4)程序中的循环语句与程序框图中的循环结构有什么关系?2.例题导读通过对例 5 的学习,学会条件语句的基本结构;通过对例 6 的学习,学会如何将程序框图转化为程序;通过对例 7 的学习,学会如何编写排序的程序;通过对例 8 的学习,学会循环语句的基本结构.1.条件语句的概念处理条件结构的算法语句,叫做条件语句.2.条件语句的格式(1)IF-THEN 格式 形式:IF 条 件 THEN语 句 体END IF(2)IF-THEN-ELSE 格式形式:IF 条 件 THEN语 句 体 1ELSE语 句 体 2END IF3.功能(1)IF-THEN 格式:首先对 IF 后的条件进行判断,如果(IF)条件符合,那么(THEN)执行语句体,否则执行 END IF 之后的语句.(2)IF-THEN-ELSE 格式:首先对 IF 后的条件进行判断,如果(IF)条件符合,那么(THEN)执行语句体 1;否则(ELSE)执行语句体 2.4.循环语句的格式、功能及程序框图的对应关系名称 直到型 当型格式 DO 循环体 WHILE 条件 循环体- 2 -LOOP_UNTIL 条件 WEND功能先执行一次 DO 和 UNTIL之间的循环体,再判断UNTIL 后的条件是否符合,如果不符合,继续执行循环体,然后再检查上述条件,如果仍不符合,再次执行循环体,直到条件符合时为止.这时不再执行循环体,跳出循环体执行UNTIL 语句后面的语句先判断条件的真假,如果条件符合,则执行 WHILE和 WEND 之间的循环体,然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止,这时不再执行循环体,跳出循环体,执行WEND 后面的语句对应程序框图1.判断下列各题.(对的打“√” ,错的打“×”)(1)算法中的循环结构只能由 WHILE 语句来实现;( )(2)一般程序设计语言中有当型和直到型两种循环语句结构;( )(3)算法中的循环结构由循环语句来实现.( )解析:循环结构包含两种基本类型:WHILE 语句和 UNTIL 语句,故(1)×;(2)(3)都对.答案:(1)× (2)√ (3)√2.求下列函数的函数值的算法中需要用到条件语句的函数为( )A. f(x)= x2-1B. f(x)= x3-1C. f(x)= {x2+ 1( x≤ 2.5)x2- 1( x2.5) )D. f(x)=2 x解析:选 C.A、B、D 只需要用顺序结构就能描述算法.C 需要对自变量进行判断,要用条件语句,故选 C.3.当 x=3 时,下面算法的输出结果是________.INPUT xIF x=0 THENy=x ∧ 2-1ELSEy=2*x ∧ 2-5END IFPRINT “y=” ;yEND方法归纳(1)对于分段函数的求值问题,由于计算之前,需要对自变量进行判断,因此需要用到条件结构,并且本例还是一个两个分支的条件结构,所以可运用条件语句的 IF—THEN—ELSE—END IF 格式来表示算法.(2)条件语句是一个整体,IF THEN ELSE END IF 都是语句的一部分,且“IF END IF”必须成对出现.1.(1)输入一个数 x,如果它是正数,则输出它;否则不输出.画出解决该问题的程序框图,并写出对应的程序.解:程序框图如图所示: 程序如下:INPUT xIF x0 THENPRINT xEND IFEND(2)根据以下程序框图写出程序:- 5 -解:程序如下:INPUT “输入正整数” ;nIF n0 AND n2 AND n6 AND n99PRINT sEND解:程序框图如图所示.条件语句与循环语句的综合应用输入 100 个数,将其中的正数输出,写出计算正数个数的程序.[解] 程序如下:i=0m=0DOINPUT xi=i+1IF x>0 THENPRINT xm=m+1- 9 -END IFLOOP UNTIL i>=100PRINT mEND方法归纳本例引入了两个变量: i 是计数变量,初值为 0,作用是记录输入的实数个数,故循环的条件为 i≥100,若改用当型循环,则改为 i<100. m 也是计数变量,初值为 0,作用是记录输入的正数个数.4.(1)输入 20 个实数,统计并输出其中正数、零和负数的个数,写出算法语句.解:程序如下:i=1num1=0num2=0num3=0WHILE i0 THENnum1=num1+1ELSEIF x=0 THENnum2=num2+1ELSEnum3=num3+1END IFEND IFi=i+1WENDPRINT “正数的个数为:” ;num1PRINT “零的个数为:” ;num2PRINT “负数的个数为:” ;num3END(2)给出某班 50 名学生的数学测试成绩,60 分及以上为及格,要求统计及格人数、及格人数的平均分、全班同学的平均分,画出程序框图,并写出程序.解:程序框图如图所示:- 10 -程序如下:M=0,i=1,S=0,T=0DOINPUT xIF x>=60 THENS=S+xM=M+1END IFT=T+xi=i+1LOOP UNTIL i>50P=S/MT=T/50PRINT M,P,TEND规范解答 条件嵌套型问题的程序编写(本题满分 12 分)元旦期间,某商城搞挂历促销活动:原价每本 20 元,购买 5 到9 本按 9 折收费,买 10 本及其以上按 8 折收费,请帮商场设计收费的程序.[解] 设某人所购挂历本数为 x,商场应收其 y 元,则 y 关于 x 的函数关系式为:- 11 -y= 4 分{20x, 0< x< 5,20×0.9x, 5≤ x≤ 9, 20×0.8x, x≥ 10, )程序如下:INPUT “x=” ;xIF x>0 AND x<5 THENy=20*xELSEIF x<=9 THENy=20*0.9*xELSEy=20*0.8*xEND IFEND IFPRINT yEND[规范与警示] 正确写出 y 关于 x 的分段函数的关系式是解本题的关键. 注意语言符号的规范.(1)写程序一定要按要求的符号书写,要与我们平时的手写区分开.(2)首先,对程序中条件的书写格式要熟练规范,如果要多个条件同时成立,应用“AND”连接,而不能是连续的不等式.其次,对条件语句要理解清楚,实际上第一个 IF 语句不成立时,已经隐含了“ x>=5”这个条件.(3)要熟悉条件语句的嵌套形式,任何时候,条件语句中的“IF”与“END IF”一定成对出现.1.下列需用循环语句编写程序的是( )A.输入 x 的值,输出 y= x2-3 x 的值B. y= 输入 x 的值,输出对应的函数值{x- 4, x> 0,- x+ 1, x≤ 0, )C.求 x 的立方根D.求 1+2+3+…+2 015 的值解析:选 D.D 项中是求多项数值的和,需用到循环语句.2.给出以下四个问题,①输入一个数 x,输出它的算术平方根;②求函数 f(x)=的函数值; ③求周长为 6 的正方形的面积;④求三个数 a, b, c 中的最小{x2+ 1, x≥ 0x- 1, x< 0 )数.其中不需要用条件语句来描述其算法的有( )A.1 个 B.2 个C.3 个 D.4 个解析:选 A.①需判断这个数是否为非负数;②是分段函数求值问题;④需判断这三个数的大小.①②④均需用到条件语句,只有③不需要.3.如果下列程序执行后输出的结果是 132,那么在程序 UNTIL 后面的“条件”应为( )8 分12 分- 12 -i=12s=1DOs=s*ii=i-1LOOP UNTIL ________PRINT sENDA.i11 B.i>=11C.i<=11 D.i50.)当 x=60 时, y=25+0.6×(60-50)=31.∴输出 y 的值为 31.- 14 -6.若 a=11,下面的程序段输出的结果是________.INPUT aIF a<10 THENy=2*(a-1)ELSEy=a MOD 10END IFPRINT yEND解析:由于当 a=11 时,不满足条件 a<10,所以执行 y= a MOD 10,得到的结果是y=1.注意“ a MOD 10”是 a 除以 10 的余数.答案:17.已知下列程序:INPUT xIF x<=-1 THENy=-x-1ELSEIF x>1 THENy=-x ∧ 2+1ELSEy=x-1END IFEND IFPRINT “y=” ;yEND如果输出的是 y=0.75,则输入的 x 是________.解析:由程序可知本题为根据输入的 x,求函数 y= 的函数值.我{- x- 1, x≤ - 1- x2+ 1, x> 1x- 1, - 1< x≤ 1)们可以分段令 y=0.75,并验证,可求得 x=-1.75.答案:-1.758.(2015·吉林高一检测)已知有下面的程序,如果程序执行后输出的结果是 360,那么在程序 UNTIL 后面的“条件”应为________.i=6s=1DOs=s*ii=i-1LOOP UNTIL 条件PRINT sEND解析:因为输出的结果是 360,即 s=1×6×5×4×3,需执行 4 次, s 需乘到 3, i<3后结束算法.所以,程序中 UNTIL 后面的“条件”应为 i<3(或 i<=2).- 15 -答案:i<3(或 i<=2)9.(2015·罗源高一检测)编写一个程序计算 12+3 2+5 2+…+99 2,并画出相应的程序框图.解:程序如下:S=0i=1DOS=S+i ∧ 2i=i+2LOOP UNTIL i>99PRINT SEND程序框图如图所示:10.给出一个算法的程序框图(如图所示).(1)说明该程序的功能;- 16 -(2)请用 WHILE 型循环语句写出程序.解:(1)该程序的功能是求 1+ + +…+ 的值.12 13 199(2)程序如下:S=0K=1WHILE K<=99S=S+1/KK=K+1WENDPRINT SEND[B.能力提升]1.(2015·衡阳检测)下面程序运行后输出的结果为( )a=0j=1WHILE j<=5a=(a+j) MOD 5j=j+1WENDPRINT aENDA.50 B.5C.25 D.0解析:选 D.本程序的功能是求 a+ j 被 5 除所得的余数,从而循环体在执行的过程中 a与 j 的对应值如下表:a 1 3 1 0 0j 2 3 4 5 62.读程序:甲:i=1S=0WHILE i=1 THENy=x+1ELSEy=2*x+1END IFPRINT yEND(1)若执行程序时,没有执行语句 y= x+1,则输入的 x 的范围是________;(2)若执行结果为 3,则执行的赋值语句是________,输入的 x 的值是________.解析:(1)不执行 y= x+1 语句,说明不满足条件 x≥1,故有 x1.(2)当 x1 时, y2×1+1=3,只有 x+1=3, x=2.答案:(1) x1 (2) y= x+1 24.下面是一个用于计算 + +…+ 的程序,则①处应填的语句是11×2 12×3 120×21________,②处应填的语句是________.s=0i=1WHILE i<=20①__②__WENDPRINT “s=” ;sEND解析:累加求和需用赋值语句“s=s+1/(i*(i+1))” ,控制执行循环条件需要用赋值语句“i=i+1” .答案:s=s+1/(i*(i+1)) i=i+15.儿童乘坐火车时,若身高不超过 1.1 m,则无需购票;若身高超过 1.1 m 但不超过1.4 m,可买半票;若超过 1.4 m,应买全票.试写出一个购票算法程序.- 18 -解:程序如下:INPUT “身高 h(h>0)” ;hIF h<=1.1 THENPRINT “免费乘车”ELSEIF h<=1.4 THENPRINT “半票乘车”ELSEPRINT “全票乘车”END IFEND IFEND6.(选做题)一个小朋友在一次玩皮球时,偶然发现一个现象:球从某高度落下后,每次都反弹回原高度的 ,再落下,再反弹回上次高度的 ,如此反复.假如球从 100 cm 处落13 13下,那么第 10 次下落的高度是多少?在第 10 次落地时共经过多少路程?试用程序语言表示其算法.解:程序如下:s=0h=100s=s+hi=2WHILE i<=10h=h/3s=s+2*hi=i+1WENDPRINT “第 10 次下落的高度为” ;hPRINT “第 10 次落地时共经过的路程为” ;sEND- 19 -
展开阅读全文
相关搜索