如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
_______________________________________________________________________________________________________Pascal速成教程0、程序的设计过程建模--->算法--->源代码--->编译--->执行--->发行1、你的第一个Pascal程序1programex01;2begin3writeln('helloworld');4end.编译,执行,我们看到了第一个输出:helloworld让我们来看看这个程序的结构:行1:program语句指定程序名称,例如,这里告诉编译器,程序名称为ex01,在FreePascal中可以省略。行2:begin...end:语句块开始、结束的标志,Pascal程序中,主程序必须包含在一组begin...end中。其实,只要程序员认为语句为一个整体,那么它们就应该被包含于begin...end中行3:writeln('helloworld');writeln语句控制输出,这里,输出helloworld。更多细节:1、行1、行3中语句结束的“;”:Pascal中每一个语句结束,其末尾应当有分号(特殊情况后面再讨论)表示语句结束。2、行4末尾的“.”:Pascal中全局程序的begin...end语句组结束后,末尾用“.”。3、行3中,包含helloworld的“''”,Pascal中,字符串都由“''”包围。2、输入、输出我们的程序用writeln语句实现了输出helloworld的使命,但若我们要电脑读入一个数,并将它输出,那该怎么办?我们先看一看下列程序:1programex02;2var3i:integer;4begin5readln(i);6writeln(i);7end.当你键入一个数(比如说5)以后,得到以下输出:55行2:var关键字表示变量的定义,即行3到下一个关键字(这里是行5的begin)属于变量的声明。关于变量的介绍在后面会提到,这里,你只需要知道,行3定义了一个整型变量(数据类型在第4节讲到)行5:readln语句读入一个值到i(这里是5),writeln语句输出i的值。readln();输入函数,控制输入变量,它是一个无限参数指令,例如:x1,x2,x3,x4,x5,x6...xN:integer;{注意,变量间用“,”隔开}readln(x1,x2,x3,x4,x5...,xN);{函数中,参数间用“,”隔开}writeln();输出函数,与readln一样,也是无限参数指令。即writeln(x1,x2...,xN);将输出x1到xN的所有值。writeln();可以将数字、字符串混合输出,例如:假定i=3,j=4,则writeln('No.',i,'is',j);将输出如下内容:No.3is43、表达式1、赋值表达式:1programex03;2var3x1,x2:integer;4begin5readln(x1);6x2:=x1;7writeln(x2);8end.编译,运行,看到如下内容:|5||5|行5读入了一个x1的值(这里为5),行6将x1的值赋给x2,因而行7输出5。Pascal中,赋值号为:=,它就相当于我们现实中的=,但由于Pascal中=已经另有用处,因而被:=替代。2、运算符:计算机就是要计算,那么如何在Pacal中实现计算呢?先看看下面程序:1programex03;2var3x1,x2:integer;4begin5readln(x1);6x2:=x1+x1;7writeln(x2);8end.运行后,看到:510程序输出为10,也就是说,第6行语句先计算了x1+x1的值(这里为10,因为输入为5),再将值赋给x2。Pascal中内置了以下运算符:符号名称举例+加号1+1=2-减号1-1=0*乘号2*3=6/除号10/2=5.0为什么会有小数点?后面再说div整除8div7=1求的是“不超过a/b的最大整数”mod取余23mod10=3求的是“a/b的余数”4、数据类型1programex04;2var3x1,x2,x3:integer;4begin5readln(x1,x2);6x3:=x1/x2;7writeln(x3);8end.编译,出错了???编译器给出一条错误信息:Error:Incompatibletypes:got"S80REAL"expected"SMALLINT"这是因为,x1/x2不一定为整数,将它的值赋给x3,显然有问题。解决办法