课件13张PPT。1.2.1输入、输出语句和赋值语句赋值语句格式说明:“:=”是赋值号。它与比较符“=”是两 个不同的符号。A:=5表明将整数5赋给变量A,完成一个动作。而A=5表明变量A与5相比较判断等与不等,结果是一个布尔值。
赋值语句执行过程:计算赋值号右边的表达式,求出其结果,并将结果赋给赋值号左边的变量名。注意:赋值语句在使用时,要注意赋值号两边的数据类型必须赋值兼容,即类型相一致或相容。练习1说出每执行一次赋值语句后变量a、b的内容变化。
Program examp1_1
Var
a,b: integer;
Begin
a := 3; b :=5;
a := a+b;
b := b*a;
a := b div 2;
End.练习2编写程序,交换两个变量的值。Program ex_2;
var
a,b,t: integer;
Being
read(a,b);
t:=a;
a:=b;
b:=t;
write(‘a=‘,a,’b=‘,b);
End.输出语句格式说明:write和writeln是标准过程名,它们是标准标识符。输出项可以是表达式,表达式可以是常量、变量、函数名、表达式。多个输出项用逗号隔开。输入以下程序,说出write和writeln的区别。
Program ex_3;
Var a,b,c:integer;
Begin
a:=30; b:=5; c:=20;
write(a);
write(b);
write(c);
End.
Program ex_3;
Var a,b,c:integer;
Begin
a:=30; b:=5; c:=20;
writeln(a);
writeln(b);
writeln(c);
End.自定义输出格式单场宽
设e为输出项,单场宽的书写形式为e:n1。n1是正整数,用来表示输出的列数。输入以下程序,改变场宽,观察变化Program ex_4;
Var
a:integer;
ch:char;
flag:boolean;
Begin
a:=1234;
ch:=‘a’
flag:=true;
writeln(a,ch,flag);
writeln(a:8,ch:8,flag:8);
End.如果场宽小于标准场宽,将会如何?实数的输出输入下面的程序,观察输出结果。
Program ex_5;var a:real;begin a:=13.56; writeln(a);end.双场宽双场宽是用来控制实型数的输出格式的。双场宽输出格式为e:n1:n2。其中n1、n2是两个正整数,并且n1大于n2。n1表示输出的总列数,包括符号位、整数部分、小数点、小数部分;n2表示小数部分占的列数。
通过双场宽可以将实数不按科学记数法的形式输出。修改场宽,观察输出结果Program ex_5;var a:real;begin a:=13.56; writeln(a:10:2);end.
如果a:=12345678,如何输出?输入语句格式说明:read和readln是标准过程。多个变量之间用逗号分隔,必须是变量名,不可以是常量和表达式。如read(2,a*b)。变量不可以是布尔型。
Read后必须有参数,readln后可以没有参数,只是等待输入一个回车。
当执行输入语句时,机器等待用户从键盘输入数据,输入的数据先进入键盘缓冲区,从键盘缓冲区中再依次输入给程序中相应的变量。如果输入语句有ln则给程序中变量输入完数据后,清空键盘缓冲区。没有ln则输入完后不清空。
如果输入数据类型不匹配,语句报错停止执行。报错信息为ERROR 106。数据输入输入数据必须为常量,不可以是变量或表达式。
输入以下程序,运行时输入数据,分清read、readln的区别。
Program ex_5;var a,b,c:integer;begin readln(a,b); read(c); write(‘a=‘,a,’b=‘,b,’c=‘,c);end.输入的相容问题Program ex_5;var a,b:integer;c:char;begin readln(a,b); read(c); write(‘a=‘,a,’b=‘,b,’c=‘,c);end.
输入以下数据,看发生什么情况:
1.2*10 30
2.2 10
2
3 a 20