第三顺序结构程序设计课件.ppt
第三顺序结构程序设第三顺序结构程序设计计第1页,此课件共13页哦3.1 赋值语句赋值语句 PASCAL有两个语句可以改变变量的值。赋值语有两个语句可以改变变量的值。赋值语句是其中之一(另一个是读语句)。赋值,顾名句是其中之一(另一个是读语句)。赋值,顾名思义,就是把一个值赋予某个量。可以这理解:思义,就是把一个值赋予某个量。可以这理解:变量相当于装东西的容器,赋值的过程就是把东变量相当于装东西的容器,赋值的过程就是把东西放进容器的过程。赋值语句格式如下:西放进容器的过程。赋值语句格式如下:变量:变量:=表达式;表达式;写赋值语句有以下几点要注意:写赋值语句有以下几点要注意:1、赋值号、赋值号“:=”赋值号由两个字符构成,是一个运算符。如赋值号由两个字符构成,是一个运算符。如果把这两个字符拆开,那么这两个字符就是别的果把这两个字符拆开,那么这两个字符就是别的意思了:意思了:“:”是分隔符而是分隔符而“=”是关系运算符,是关系运算符,判定两个对象是否相等。判定两个对象是否相等。第2页,此课件共13页哦 例:例:a,b:integer;是一个说明语句。是一个说明语句。“:”是变量表和变量类型的分隔符是变量表和变量类型的分隔符 a=b 是一个表达式。它的值是一个布尔类是一个表达式。它的值是一个布尔类型的量:型的量:TRUE或或FALSE a:=3;是一个语句。把整型常量值;是一个语句。把整型常量值3赋给整赋给整型变量型变量a 2、变量要先说明、变量要先说明在赋值号左边出现的变量,要在程序头的说明部在赋值号左边出现的变量,要在程序头的说明部先加以说明,否则编译时出错。先加以说明,否则编译时出错。3、表达式必须要有确定的值、表达式必须要有确定的值 赋值号右边出现的表达式,必须是可以求值的。赋值号右边出现的表达式,必须是可以求值的。也就是说,经过运算之后,能得出一个具体的、也就是说,经过运算之后,能得出一个具体的、确定的值出来。确定的值出来。第3页,此课件共13页哦 4、赋值号两边的数据类型必须相同或相容、赋值号两边的数据类型必须相同或相容我们知道,我们知道,PASCAL中的量不管是变量还是常量中的量不管是变量还是常量都有一个属性称为都有一个属性称为“数据类型数据类型”。数据类型相同。数据类型相同的或相容的才可以相互赋值。的或相容的才可以相互赋值。相同:赋值号左边变量如果是整型,右边表相同:赋值号左边变量如果是整型,右边表达式的值的类型也要是整型;达式的值的类型也要是整型;相容:当一种数据类型的取值范围包含着另相容:当一种数据类型的取值范围包含着另一种数据类型的取值范围时,就可能出现类型相一种数据类型的取值范围时,就可能出现类型相容的情况。如实型与整型,整型、字符型与它们容的情况。如实型与整型,整型、字符型与它们各自的子界类型各自的子界类型如果把整型值赋给实型变量,如果把整型值赋给实型变量,把整型子界值赋给整型变量,不会出错;但如果把整型子界值赋给整型变量,不会出错;但如果反过来,就会出现反过来,就会出现“溢出溢出”,出错了。,出错了。第4页,此课件共13页哦读语句读语句 读语句(读语句(read语句)和赋值语句一样,能够改变变量的值。语句)和赋值语句一样,能够改变变量的值。与赋值语句不同,读语句从键盘或文件接收值赋予变量,而与赋值语句不同,读语句从键盘或文件接收值赋予变量,而赋值语句则直接由程序语句获得。读语句格式如下:赋值语句则直接由程序语句获得。读语句格式如下:read(变量名表变量名表);readln(变量名表变量名表);readln;读语句是编程中用得最多的语句之一。在使用时有几点要注意:读语句是编程中用得最多的语句之一。在使用时有几点要注意:1、变量名表。写在括号中的变量,都要在变量说明中先预以、变量名表。写在括号中的变量,都要在变量说明中先预以说明;变量与变量之间,以说明;变量与变量之间,以“,”分隔;分隔;例:例:var a,b:integer;read(a,b);第5页,此课件共13页哦 2、从键盘接收数据时,要注意各种不同数据类、从键盘接收数据时,要注意各种不同数据类型数据的分隔符不同。所谓分隔符就是两个完整型数据的分隔符不同。所谓分隔符就是两个完整的数值之间的标记,也可以这样理解,当计算机的数值之间的标记,也可以这样理解,当计算机从键盘读入数据时,一旦碰到分隔符,就认为当从键盘读入数据时,一旦碰到分隔符,就认为当前的数据读入已完成,可以把它赋给相应的变量前的数据读入已完成,可以把它赋给相应的变量了。各种数据类型的分隔符如下:了。各种数据类型的分隔符如下:数值型数值型(包括整型、实型以及它们的子界类型)(包括整型、实型以及它们的子界类型)以空格或回车符作为分隔符以空格或回车符作为分隔符;字符型不需分隔符字符型不需分隔符(因为字符型数据的长度固(因为字符型数据的长度固定,只有一个);定,只有一个);字符串以回车符作为分隔符字符串以回车符作为分隔符。第6页,此课件共13页哦注意注意read与与readln的区别的区别 readln语句和语句和read语句不同之处在于输入数据到语句不同之处在于输入数据到各变量之后,各变量之后,readln自动换行,从下一行开始再自动换行,从下一行开始再输入数据。一个输入数据。一个read语句执行完后,数据行中多语句执行完后,数据行中多余的未读数据可以被下一个输入语句读入;而一余的未读数据可以被下一个输入语句读入;而一个个readln于执行完后,数据行中多余未读数据就于执行完后,数据行中多余未读数据就没有用了。没有用了。readln语句中可以不包含变量名表。语句中可以不包含变量名表。read(a,b);readln;等价于等价于 readln(a,b);第7页,此课件共13页哦 得出结论:语句得出结论:语句read只管接收数据,语句只管接收数据,语句readln接收完数据后,还把同行的其它数据全部宣布作接收完数据后,还把同行的其它数据全部宣布作废。废。变量说明变量说明var a,b,c,d:integer;执行结果执行结果abcd程序段一程序段一read(a);readln(b,c);read(d);1236程序段二程序段二readln(a);read(b,c);read(d)1678输入数据输入数据1 2 3 4 56 7 8第8页,此课件共13页哦写语句写语句 写(写(write)语句是)语句是Pascal中唯一能将运算结果送中唯一能将运算结果送出显示在显示器屏幕的语句。格式如下:出显示在显示器屏幕的语句。格式如下:write(输出量表输出量表);输出后不换行输出后不换行writeln(输出量表输出量表);输出后换行输出后换行writeln;输出一个回车符输出一个回车符使用写语句时也有一些小问题需要注意。使用写语句时也有一些小问题需要注意。1、输出量可以是:、输出量可以是:变量。输出变量的值。输出多个变量时,变量间变量。输出变量的值。输出多个变量时,变量间用用“,”分隔。分隔。表达式。输出的是表达式的值。表达式。输出的是表达式的值。常量。直接输出常量值。常量。直接输出常量值。第9页,此课件共13页哦 2、场宽的限制在输出不同格式的数值时的作用:、场宽的限制在输出不同格式的数值时的作用:例例1:输出多个空格。:输出多个空格。write(:n);句子的意思是以句子的意思是以n个字符宽度输出冒个字符宽度输出冒号前数据项,如果数据项长度不足号前数据项,如果数据项长度不足n,则前面以,则前面以空格补齐;如果数据项长度大于空格补齐;如果数据项长度大于n,则以实际长,则以实际长度输出。如上语句句输出度输出。如上语句句输出n个空格。个空格。例例2:数据项间隔。:数据项间隔。如输出最多四位的数据:如输出最多四位的数据:write(x:5)。则数据间。则数据间至少分隔一个空格。至少分隔一个空格。第10页,此课件共13页哦 例例3:实型数据小数位数的确定。:实型数据小数位数的确定。实型数据不带格式限制时,以科学计数法的形式输出,和实型数据不带格式限制时,以科学计数法的形式输出,和我们的一般书写习惯不同。如果加上场宽的限制,则可以我们的一般书写习惯不同。如果加上场宽的限制,则可以有不同的效果:有不同的效果:var a:real;begina:=15/8;writeln(a);输出输出 1.8750000000E+00writeln(a:0:2);输出输出 1.88 整数部分按实际位数输出,小数部分整数部分按实际位数输出,小数部分保留两位小数,末位四舍五入保留两位小数,末位四舍五入.writeln(a:0:0):只输出整数部分,小数部分四舍五入只输出整数部分,小数部分四舍五入end.3、“writeln;”语句通常用于输出多组数据时在屏幕上输出空语句通常用于输出多组数据时在屏幕上输出空行来分隔数据组。行来分隔数据组。第11页,此课件共13页哦write和和writeln的区别在于:的区别在于:write语句是输出项输出后,不换行,光标停留语句是输出项输出后,不换行,光标停留在最后一项后,在最后一项后,writeln语句按项输出后,自动换语句按项输出后,自动换行,光标则停留在下一行的开始位置。行,光标则停留在下一行的开始位置。writeln语句允许不含有输出项,即仅语句允许不含有输出项,即仅writeln;表示换行。表示换行。write语句至少有一个输出量,而语句至少有一个输出量,而writeln语句语句允许不输出任何内容,只是起换行作用。允许不输出任何内容,只是起换行作用。第12页,此课件共13页哦思考与练习:思考与练习:1、a,b,c分别等于分别等于1、12、123,把它们按向左对齐、向右对齐,把它们按向左对齐、向右对齐的方式打印出来。的方式打印出来。2、输入一个四位整数,把它的各位数字倒序输出。(提示:输入一个四位整数,把它的各位数字倒序输出。(提示:用用MOD和和DIV运算完成)运算完成)3、从键盘上读入小写的从键盘上读入小写的pascal,利用,利用CHR()和()和ORD()()函数,输出大写的函数,输出大写的PASCAL。4、从键盘上读入一个实数,利用从键盘上读入一个实数,利用ROUND()和()和TRUNC()()函数,输出该实数本身、整数部分、小数部分、四舍五入后函数,输出该实数本身、整数部分、小数部分、四舍五入后的值。要求:分三行输出的值。要求:分三行输出;输出实数本身,整数部分、小数;输出实数本身,整数部分、小数部分在同一行输出;其它各占一行。部分在同一行输出;其它各占一行。5、从键盘上读入长方形的边长从键盘上读入长方形的边长a,b,计算它的面积和周长,计算它的面积和周长,输出。输出。6、输入一个时、分、秒,把它转换为一个秒数。输入一个时、分、秒,把它转换为一个秒数。第13页,此课件共13页哦