1、算法初步,第一章,1.2 基本算法语句,第一章,1.2.1 输入语句、输出语句和赋值语句,1算法的概念 算法通常是指按照一定规则解决某一类问题的明确和有限的_现在,算法通常可以编写成计算机程序,让计算机执行并解决问题,知识衔接,步骤,2几个基本程序框及其功能,终端框,(起止框),开始,结束,输入,输出,处理框,(执行框),Y,N,4(2011北京高考)执行如下图所示的程序框图,若输入A的值为2,则输出的P值为( ) A2 B3 C4 D5 答案 C,1输入语句,自主预习,变量,赋值,输入,信息,输入,破疑点 输入语句的使用说明: INPUT语句又称“键盘输入语句”,当计算机执行到该语句时,暂停
2、并等候用户输入程序运行需要的数据,此时,用户只需把数据由键盘输入,然后回车,程序将继续运行 “提示内容”的作用是在程序执行时提示用户将要输入的是什么样的数据如:INPUT“语文,数学,外语成绩”;a,b,c. “提示内容”及后面的“;”可省略,直接输入,如:INPUT a,b,c,2输出语句,表达式,值,输出,常量,变量,系统,输出,破疑点 输出语句使用说明: PRINT语句又称“打印语句”,将结果在屏幕上显示出来,是任何程序中必有的语句 “提示内容”提示用户输出的是什么样的信息如:PRINT“该生的总分”;S 具有计算功能可以输出常量、变量的值和系统信息如: PRINT 12/3 PRINT
3、 A PRINT 5 PRINT “I am a student!”,3赋值语句,表达式,左,左,赋值号,结束,破疑点 赋值语句使用说明: 在代数中AB与BA是等效的两个等式,而在赋值语句中则是两个不同的赋值过程如:AB是将B的值赋给变量A,而BA是将A的值赋给变量B. “”右边可以是常量、变量或算式,如X6,AB,当表达式为一算式时,如CXY,是指先计算XY的值,再把该值赋给C,所以赋值语句具有计算功能 “”左边必须是变量,而不能是表达式、常量如:15a,xyc都是错误的,一个语句只能给一个变量赋值,不能对几个变量连续赋值,但可以辗转赋值如:AB10是不正确的,但可以写成:A10,BA;赋值
4、后,A的值是10,B的值也是10. 可给一个变量多次赋值,但只保留最后一次所赋的值如:A5,B3,AAB;执行后A的值为8.,4几种常见的运算符号及函数符号 编写程序时,有些符号与我们平常使用的符号不一样,下面是常用的数学符号与程序符号的对照表:,警误区 由于受以前书写的影响,在书写以上符号时极易出错,故一定要小心谨慎,1下列输入语句正确的是( ) AINPUT x BINPUT x3 CINPUT “学生身高” DINPUT x3 答案 A 解析 A对,“提示内容”及后面的分号可省略,直接输入;B错,x3是代数式,不是变量;C错,只有“提示内容”而无变量;D错,x3是等式而不是变量,预习自测
5、,2下列赋值语句正确的是( ) Axy5 B3a Ca24 Dmn2 答案 C 解析 A错,“”左侧只能是变量不能是表达式,也不能是数字B错C对,把24的值即6赋给了变量a.D错,在一个赋值语句中,只能给一个变量赋值,不能出现两个或多个“”,答案 5 解析 第一步,把3的值赋给a; 第二步,把a的值3赋给b,则b的值为3; 第三步,把b2(即325)的值赋给b,此时b5. 第四步,输出b的值5.,4下面的程序书写是否有误,若有请改正,探究 以上程序的主要错误在于混淆了数学符号与程序符号的用法,上面的程序,对于计算机是无法识别的 解析 正确的程序如下:,(1)下列输入语句书写正确的是( ) AI
6、NPUT“A,B,C”a,b,c BINPUT“A,B,C”;a,b,c CINPUTa,b,c;“A,B,C” DPRINT“A,B,C”;a,b,c,输入语句、输出语句和赋值语句,互动探究,(2)下列输出语句书写不正确的是( ) APRINT S BPRINT S4 CPRINT “S”;S DPRINT (abc)/3 (3)下列语句书写正确的是_(只填序号) INPUT x3 INPUT a,b,c PRINT a,b,c ABC3 ii1,探究 1.输入语句中的“提示内容”与变量之间用什么标点符号隔开,“提示内容”可以省略吗? 2输出语句有计算功能吗? 3赋值语句中的等号与数学中的等
7、号意义相同吗? 解析 (1)“提示内容”与输入内容之间要用“;”隔开,故A错;提示内容在前,输入内容在后,故C错;输入语句用“INPUT”而非“PRINT”,故D错 (2)由输出语句的格式及功能知A,C,D正确,不能直接输出S4,故选B.,(3)对于,不能直接输入x3,书写格式不正确,故错误; 对于,省略了“提示内容”,书写正确,故正确; 对于,省略了“提示内容”,书写正确,故正确; 对于,根据赋值语句的格式,“”左边应为单个变量,右边为表达式或具体数值,故错误; 对于,符合赋值语句的格式,且赋值语句具有计算功能,故正确 答案 (1)B (2)B (3),规律总结 1.解决输入语句和输出语句要
8、明确的三个问题 (1)输入语句要求输入的值只能是具体的常数,不能是变量或表达式(输入语句无计算功能),若输入多个数,各数之间用“,”隔开 (2)计算机执行到输入语句时,暂停,等候用户输入“提示内容”所提示的数据,输入后回车,则程序继续进行,“提示内容”及其后的“;”可省略 (3)输出语句可以输出常数,变量或表达式的值(输出语句有计算功能)或字符,程序中引号内的部分将原始呈现,2赋值语句的几种常见形式 (1)赋予变量常数值,如a1. (2)赋予变量其他变量或表达式的值,如ba,b2a1. (3)变量自身的值在原值上加常数或变量,如ii1,iiS.,(1)下列输入语句正确的是( ) AINPUT
9、2,3,4 BINPUT “x”;x,“y”;y CINPUT x,y,z DINPUT x2 答案 C 解析 输入语句不能直接输入常量,其中的提示信息只能紧跟INPUT,且不能多次提示,故选C.,探究 从程序上看,所给两个程序均使用了赋值语句,但xy与yx是不同的,xy是将y的值赋给x,执行后x的值变为y的值,而y的值不变同理yx是将x的值赋给y.,解析 (1)4,4 3,3 (2)程序中的xy是将y的值4赋给x,赋值后x的值变为4;中yx是将x的值3赋给y,赋值后y的值为3. 规律总结 给一个变量多次赋值时,变量的取值是最后一次被赋予的值,阅读下列程序,并回答问题(1)中若输入1,2,则输
10、出的结果为_; (2)中若输入3,2,5,则输出的结果为_,三种语句的应用,解析 (1)阅读程序,由语句cab及a1,b2,可得c1, 又根据语句bacb,可得b2, 所以程序运行后的结果为1,2,1. (2)阅读程序,由语句AAB及A3,B2,C5,可得A5, 又根据语句BBA,可得B3, 又CC/A*B,所以输出结果为C3.,答案 (1)1,2,1 (2)3 易错警示 对于程序中的每一个变量只能有唯一的值,当给变量赋予新值时,原来的值将被“冲掉”,该变量的值变为新赋予的值 规律总结 赋值语句给变量赋值时,有两种形式:一种是将具体的数值赋给左边的变量,一种是将表达式的值赋给左边的变量对于第二
11、种情况,要先明确表达式中各个变量的具体值,再对表达式进行计算,最后将计算结果赋给左边的变量明确变量的取值与最后一次赋值有关,(1)下面的语句执行后输出的结果为_; A2,B3 BA*A AAB BBA PRINT A,B RND,(2)请阅读以下程序,并回答问题 INPUT “a”;a INPUT “b”;b c(ab)/2 dc*c PRINT “d”;d END 若输入a7,b3,则输出的结果是_ 答案 (1)6,10 (2)d25,解析 (1)由语句A2,BA*A,得B4,根据语句AAB,得A246,再根据语句BBA,得B4610.故填6,10. (2)根据赋值语句,先计算出c的值,进而
12、求得d25.,以下是一个用基本算法语句编写的程序,根据程序画出其相应的程序框图,算法、框图和语句之间的相互转化,探索延拓,探究 该程序主要利用了输入语句、赋值语句和输出语句进行算法描述,只要按顺序从上到下将输入语句、赋值语句、输出语句表达的内容填入相应的程序框即可,解析 程序框图如图所示:,规律总结 算法语句与程序框图以不同的形式展示给我们解决问题的方法,算法语句与程序框图之间是可以互化的 (1)程序中的输入语句、赋值语句、输出语句与程序框图中的输入框、处理框、输出框是一一对应的,如图所示,(2)注意在BASIC语言中常见运算符号的书写方式,明确它们的运算规则;先乘除,后加减;乘幂优先于乘除;
13、函数优先于乘幂;同级运算从左向右按顺序进行;括号内最优先,已知一程序框图如下图所示,根据框图写出相应的算法程序,解析 程序如下:,(2015三明高一检测)若将两个数a8,b17交换,使a17,b8.下面语句正确的一组是( ),误区警示,思路分析 利用赋值语句交换两个变量的值要引入中间变量,且程序运行时,每个变量的值是最后一次的赋值故B满足题意,而对D,第一行ac不符合赋值语句的格式,故D错误对于A,C,因为没有引入中间变量,所以不满足题意 正解 B,防范措施 1.准确理解赋值语句的意义 若多次给某一变量赋值,程序运行时,该变量的值是最后一次的赋值,其他值都被该值覆盖了 2交换两变量值的方法 要
14、引入中间变量,并把两变量其中的一个值赋给中间变量如本例的B答案,已知程序 若输入a,b,c的值分别为1,2,3,则输出a,b,c的值分别为_ 答案 3,1,2 解析 运行该程序得x1,y2,a3,b1,c2, 所以输出a,b,c的值分别为3,1,2.,1下列输入语句正确的是( ) AINPUT “a;b” BINPUT “x”,x CINPUT ab DINPUT “x”;x 答案 D,2下列给出的输入、输出语句正确的是( ) 输入语句:INPUT a,b,c,d,e 输入语句:INPUT X1 输出语句:PRINT A4 输出语句:PRINT 10,3*2,2/3 A. B. C D 答案 D,3下列赋值语句正确的是( )答案 C 解析 A,D不符合赋值语句的格式,所以A,D错误;赋值语句只能给一个变量赋值,不能给代数式赋值,故B错误,C正确,答案 C 解析 根据运算符号及函数的功能知,正确;不正确,故选C.,5编写程序,计算A,B,C三人的平均年龄 解析 程序如下:,