资源描述
,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,本节课内容结构,:,1.,赋值语句,2.,输入语句,3.,输出语句,4.,实例,5.,小结,通过上节课的学习你已经懂得了,Pascal,语言的一些基本概念,但这些概念不仅多而且很抽象,我们只有在实际操作过程中才能懂得,所以大家要多动手写程序,.,所有的程序都可以只用,3,种控制结构组成,顺序结构、选择结构和循环结构,今天我们就来学习其中的顺序结构。,所谓顺序结构就是一条语句接着一条语句写下来,按照从上到下的顺序执行,运行到最后一条语句就结束整个程序,下面介绍顺序结构中最常用的几条语句,.,2.,赋值语句,在程序中,语句用来描述要实现的操作。在所有语句中,最基本的就是赋值语句,它用来给变量提供数据。,赋值语句格式:,变量标示符,:=,表达式,;,赋值语句的执行是先计算后赋值,即先计算表达式的值,然后赋给变量标示符,.,例如,:x:=2*8,是先计算,2*8,的值,16,然后再赋给,x,x,最后的结果为,16,请大家看一个程序,分析一下,b,c,d,的值为多少,?,program p3_1(input,output);,const a=128;,var,b,d:integer,;,c:real,;,begin,b:=a div 16;,c:=a/b;,d:=a;,end.,程序中可以加上必要的注释,例如,:,program p3_1(input,output);,const a=128;,定义,a,为符号常量,值为,128,var,b,d:integer,;/,定义,b,d,为整型变量,c:real,;/,定义,c,为实型变量,begin,b:=a div 16;,c:=a/b;,d:=a;,end.,说明,:”:=“,为赋值符号,不要与,”,=“,混淆,.,赋值符号有方向性,左边只能是变量,如,-x:=1,是非法的,.,赋值号两边的类型应该相同,但有一个特例,:,整型可赋值给实型变量,(,因为整型可以当实型使用,),一个赋值语句只能给一个变量赋值,如,x+y,:=6,是非法的,变量可以被多次赋值,但只保留最后一次的值,.,被赋值的变量可以作为表达式因子参与运算,如,i:=i+1,意思是把,i,当前的值比如,4,加上,1,后再赋值给,i,此时,i,为,5.,程序中常用,i:=i+1,作计数器,i:=,i+x,作累加器,i:=i*x,作累乘器,.,如,:i:=2,x:=3,则依次执行一遍这,3,条语句后,i,为,?,赋值语句右边的变量在赋值后一般不会发生改变,有一种例外,你知道吗,?,下面再来看一段程序 分析,a,和,b,的值,program p3_2(input,output);,var,a,b:integer,;,begin,a:=1;b:=2;,a:=b;b:=a;,end.,3.,输入语句,实际操作中,变量的值不一定能事先知道,有时需要由用户自行输入,.,输入语句的格式,:,格式,1 read;,格式,2,readln,();,执行该语句时,程序进入等待状态,屏幕上光标闪烁,输入的数据,依次,赋给变量表中的变量,输入完毕后,继续执行其他语句,.,说明,:,变量表中的变量可以是一个,也可以是多个,多个时要有逗号分隔,.,从键盘读入数据时,数据个数不能少于变量个数,否则系统处于等待状态,.,当数据多于变量个数时,对于,readln,语句便将其忽略,对于,read,语句,要么将其忽略,(,后面没有输入语句是,),要么被下一个输入语句读入,(,后面有输入语句时,),输入数值型数据时,数据间用空格或回车键分隔,最后一定要按回车键,.,输入字符型数据时,数据间不能用空格或回车分隔,必须连续输入,.,从键盘上输入的数据必须是常量,且与变量的类型要一致,.,readln,后可以没有变量名表,(),中内容是可选项,.,此时该语句只相当于读入了,”,回车,”,符,.,read,与,readln,的关系可以表示为,:,readln(x,),等价于,read(x,);,readln,;,对于,3,个整型变量,i,j,k,若用语句,read(i,j,k,);,分别读入,1 2 3,可以有几种输入方法,?,对于,3,个字符变量,c1,c2,c3,若用,read(c1,c2,c3);,分别读入,dos,可以有几种方法,?,下面通过例子来具体说明,read,语句和,readln,语句的区别,read(a,b,c,);,read(i,j,k,);,输入数据,1 2 3 4 5,回车,6 7 8 9 10,回车,读入的结果为,:a:=1 b:=2 c:=3 i:=4 j:=5 k:=6,7 8 9 10,则被忽略掉,readln(a,b,c,);,readln(i,j,k,);,输入数据,1 2 3 4 5,回车,6 7 8 9 10,回车,读入的结果为,:a:=1 b:=2 c:=3 4,和,5,被忽略,i:=6 j:=7 k:=8 9,和,10,被忽略,4.,输出语句,赋值语句和输入语句是向程序提供数据的语句,程序运行结束后,如何看到运行结果呢,?,这就需要用到输出语句,.,一个能解决实际问题的程序是不可以没有输出语句的,.,输出语句的格式,:,格式,1 write,格式,2,writeln,(),说明,:,输出项可以是一项,也可以是多项,输出多项时各项以逗号分隔,.,输出项可以是任何一种标准数据类型,.,输出项可以是常量、变量、函数、表达式。,输出项为常数时,直接输出其值,输出项为变量时,输出该变量存储单元中的内容,输出项为函数或表达式时,先计算再输出。,write,语句输出完最后一项不换行,它至少有一个输出项。,writeln,语句输出完最后一项后换行,该语句允许没有输出项,只起到换行的作用。,write,与,writeln,的关系可以表示为:,writeln(x,);,等价于,write(x,);,writeln,;,分析以下程序结果,program p3_7(input,output);,const a=1;b=2;,begin,writeln(a,);,writeln(sqr(3);,writeln(a+b,);,writeln(a+b,=,a+b,);,write(pi,=);,writeln(3.14);,end.,输出语句的输出格式,数据类型 标准场宽 实例 输出结果,整型 实际长度,write(7864);7864,实型,17,位,write(-523.8);-5.23800E+02,字符型 字符长度,write(Pascal,)Pascal,布尔型,4,或,5,位,cons t=true,write(t,)true,从上面可以看到,标准场宽就是实际输出值的宽度,一般不能满足各种需要,Pascal,允许用户自己来定义场宽,.,自定义场宽分为,单场宽和双场宽,.,单场宽,:,用来控制整型、字符型、布尔型数据的输出格式,不能用于实型,.,格式为,x:n,x,表示要输出的项目,n,表示输出时所占的列数,n,为正整数,例如,:,设,k,为整数,2008,ch,为字符,!,f,为布尔值,true,则,writeln(k:5);,屏幕显示 空,2008,writeln(ch:5);,屏幕显示 空空空空,!,writeln(f:5);,屏幕显示 空,true,writeln(love:5);,屏幕显示 空,love,双场宽,:,用来控制实型数据的输出格式,格式为,x:n1:n2,x,表示要输出的项目,n1,表示输出,x,时所占的总列数,包括符号位、整数部分、小数点和小数部分,;n2,表示小数部分的列数,.n1,和,n2,应该为正整数,且,n1n2.,如,:writeln(197.9:7:2);,屏幕显示 空,197.90,writeln(-1.979:7:2);,屏幕显示 空空,-1.98,说明,:,自定义场宽优先级高于标准场宽,单场宽一律右对齐,双场宽向小数点看齐,多余的小数位数补零,.,当数据突破场宽时,首先保证数据的准确,.,但双场宽的,n2,限制仍然有效,双场宽的小数部分按四舍五入显示,但内存中该数仍是原来的精确度,.,分析下面程序的结果,program p3_9(input,output);,var,a:integer,;,b:real,;,c:char,;,d:boolean,;,begin,a:=78;,b:=2003.009;,c:=%;,d:=true;,writeln(a,a:2);,writeln(b,b:5:2);,writeln(c,c:2);,writeln(d,d:5);,writeln(zhe:6);,end.,5.,实例 下面通过几个实例来加深对前面几个语句的理解,1),鸡兔同笼问题,.,已知鸡和兔的总数量是,h,鸡和兔的总腿数是,f,求笼中的鸡和兔各有多少只,?,h,和,f,由用户从键盘输入,输出鸡和兔的个数,源程序见,jitutl.pas,2),交换两个变量,a,和,b,的值,比如,a:=5,b:=9,怎样操作能将,a,和,b,的值交换,源程序见,jiaohuan1.pas jiaohuan2.pas,3),随机产生一个三位自然数,找出其中的百位、十位和个位上的数字,.,源程序见,random.pas,小结,:,本节课大家学习了,3,种控制结构中最简单的顺序结构,并学习了赋值语句、输入语句和输出语句。现在大家已经可以编写一些简单的程序了。今天的重点内容是,read,和,readln,以及,write,和,writeln,的区别,大家一定要弄清楚。,作业,输入,3,个变量,a,b,c,将,a,的值传给,b,b,的值传给,c,c,的值传给,a,比如,:,a,b,c,分别为,1,2,3,则程序运行后,a,b,c,变为,3,1,2,用户输入一个,3,位数,将这个,3,位数反序输出,比如,:,用户输入,257,则程序运行后输出,752.,
展开阅读全文