欢迎来到天天文库
浏览记录
ID:50365179
大小:76.50 KB
页数:11页
时间:2020-03-08
《Lazarus讲义2(顺序结构).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第四课顺序结构程序设计4.1赋值语句4.2读语句4.3写语句4.4文件操作4.5练习与作业4.1赋值语句 PASCAL有两个语句可以改变变量的值。赋值语句是其中之一(另一个是读语句)。赋值,顾名思义,就是把一个值赋予某个量。可以这理解:变量相当于装东西的容器,赋值的过程就是把东西放进容器的过程。赋值语句语法格式如下: 变量:=表达式;语法说明:1、赋值号“:=” 赋值号由两个字符构成,是一个运算符。如果把这两个字符拆开,那么这两个字符就是别的意思了:“:”是分隔符而“=”是关系运算符,判定两个对象是否相等。刚刚写程序的同学要特别注意这一点。 例:a,b:inte
2、ger;——是一个说明语句。“:”是变量表和变量类型的分隔符 a=b——是一个表达式。它的值是一个布尔类型的量:TRUE或FALSE a:=3;——是一个语句。把整型常量值3赋给整型变量a 2、变量要先说明在赋值号左边出现的变量,要在程序头的说明部分先加以说明(即先向内存申请相应的存储单元),否则编译时出错。3、表达式必须要有确定的值赋值号右边出现的表达式,可以是一个常量、常量标识符、一个变量、一个函数或一个带运算符的运算式。当是一个变量时必须是已经赋过值的变量。当是一个运算式时必须是可以求值的运算式。也就是说,经过运算之后,能得出一个具体的、确
3、定的值出来。大家想一想,如果连表达式自己都不知道自己的值是多少,怎么还能把值“赋予”别人呢?4、一个赋值语句只能给一个变量赋值。有多少个变量需要赋值,就要写多少个赋值语句。以下书写形式是错误的:a:=b:=1;a,b,c:=2;2:=a;但是a:=b是否正确要看你的程序目的,当是把b的值转赋给a时,是正确的,当你是要把a的值转赋给b时,就是错误的。5、一个变量可以在程序的不同地方(程序运行的不同时刻)对同一个变量赋不同的值(即变量可以反复、重复赋值),但一个时刻只能保存一个值。因此,当需要对一个变量重新赋值时,必须保证该变量中原来保存的值已经不需要了,否则,一定要另使用其它变量或
4、者将该变量中原来的值进行转存。3、累加器、累乘器、计数器变量需要先赋初值。4、赋值号两边的数据类型必须相同或相容我们知道,PASCAL中的量不管是变量还是常量都有一个属性称为“数据类型”。数据类型相同的或相容的才可以相互赋值。先理解数据类型相同:打个比方,我们沏茶用的是茶杯,装饭时用饭碗。如果用饭碗来泡功夫茶,用小茶杯来装饭,那是不可行的。回到PASCAL中来,赋值号左边变量如果是整型,右边表达式的值的类型也要是整型;赋值号左边变量如果是字符型,右边表达式的值的类型也要是字符型……否则的话,也要出错了。这是数据类型相同的情况。 对于数据类型相容的,我们也可以用一个例子来帮助
5、理解。我们都喝过茶,也喝过大杯茶。把小茶杯茶倒在大茶杯里,一般不会出什么问题;但如果把大杯里的茶倒在小茶杯里呢?可能小茶杯装不下大茶杯里的茶,茶“溢出”了。在PASCAL中也会出现这种情况。当一种数据类型的取值范围包含着另一种数据类型的取值范围时,就可能出现类型相容的情况。如:整型与长整型、短整型和整型、字符型和字符串型等,后者可以包容前者。即把前者的值赋给后者的变量是可以的,但是,如果把后者的值赋给前者的变量就会溢出。另注意:整型的值赋给实型的变量是相容的,反之把实型的值赋给整型的变量就不相容,编译时会通不过而报错。因些,我们在写赋值语句时,要注意两边的类型是否匹配。这一点初学
6、者经常会犯错误。 例:有程序如下:vara,b:integer;c:real;d:longint;begin a:=100; b:=a; {-------------以上是相同数据类型进行赋值} d:=100; d:=b;c:=d; c:=b; {-------------以上是相容数据类型进行赋值} b:=d; a:=c;d:=c; {----------以上两个赋值语句都出现溢出,编译时出错}end. 练习:1、编写一个程序,将a,b两个变量中保存的值相互交换。4.2读语句读语句(read语
7、句)和赋值语句一样,能够改变变量的值。与赋值语句不同,读语句从键盘或文件接收值赋予变量,而赋值语句则直接由程序语句获得。读语句是编程中用得最多的语句之一。读语句语法格式如下: read(变量名表);I型 readln(变量名表);II型 readln;III型 语法说明:1、read是关键字,是读语句语句定义符,和赋值语句没有语句定义符不同。2、和赋值语句不同,一条read语句中,可以多个变量一起获得值。3、读语句一般处于程序的开始部分,用于获得程序运行需
此文档下载收益归作者所有