pascal教程-自学完整版

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Pascal教程目录•第一章算法、程序设计与编译器基础•第二章Pascal基础•第三章程序设计初步•第四章枚举、子界与数组•第五章过程与函数•第六章集合、记录与文件•第七章指针等动态类型•第八章面向对象与单元设计•第九章特效第一章算法、程序设计与编译器基础目录•第一讲算法基础知识算法描述方法•第二讲程序语言•第三讲Pascal编译器基础第一讲算法基础知识算法描述方法用计算机解决实际问题的四个步骤•分析问题,把实际问题抽象为一个一般性的数学问题•根据分析,设计出求其解的方法和步骤•用某种形式(如图形、自然语言、类计算机语言)表达以设计好的算法•在计算机上编辑、调试和测试编制好的程序,直到正确满足问题的需求算法的描述方法•例1.1.1:•交换a、b两数值•定义c•a→c•b→a•c→bN-S图•1973年,美国学者I.Nassi和B.Shneiderman提出了一种在流程图中完全去掉流程线,全部算法写在一个矩形框内,在框内还可以包含其它框的流程图。•N-S图也被称为盒图或CHAPIN图。N-S图•功能域明确;•很容易确定局部和全局数据的作用域;•不可能任意转移控制;•很容易表示嵌套关系及模块的层次关系。N-S图顺序AB选择PTFABA直到P当PA当型直到型循环第二讲程序语言编程语言•机器语言•汇编语言•高级语言•脚本语言第三讲Pascal编译器基础编译器•TurboPascal7•FreePascal1.0/2.0•CPPascal•SuperPascal•Delphi7.0•Lazarus•GUIDETurboPascal7.0FreePascal快捷键•F2•Alt+Enter•Alt+X•F7•F8•F9•Alt+F9•Ctrl+F9•保存•全屏/小窗口转换•关闭•单步执行当前程序•单步执行当前程序•导出exe程序•纠错•调试并导出exe程序文件关联.pas.bak.o.exe.ppu.tpu第二章Pascal基础目录•第一讲Pascal语言特点、优点与缺点•第二讲Pascal程序结构•第三讲Pascal基本符号、保留字和标识符•第四讲Pascal标准数据类型、常量与变量•第五讲Pascal标准函数、过程、运算符与表达式第一讲Pascal语言特点、优点与缺点Pascal特点•以法国数学家命名的Pascal语言现已成为使用最广泛的语言之一,其主要特点有:严格的结构化形式;丰富完备的数据类型;运行效率高;查错能力强。Pascal优点⒈结构化•Pascal可以方便地书写出结构化程序。这就保证程序的正确性和易读性。在结构化这一点上,比其它算法语言更好一些。Pascal优点⒉数据类型丰富•Pascal提供了整数型、实数型、字符型、布尔型、枚举型、子界型以及由以上类型构成的数组类型、集合类型、记录类型和文件类型。此外,还提供了其它许多语言中所没有的指针类型。丰富的数据结构和上述的结构化性质,使得Pascal可以被方便地用来描述复杂的算法。Pascal优点⒊适用性好•既适用于数值运算,也适用于非数值运算领域。有些语言只适用于数值计算,有些语言则适用于商业数据处理和管理领域。Pascal的功能较强,能广泛应用于各种领域。Pascal优点⒋书写较自由•不象有些算法语言那样对程序的书写格式有严格的规定。Pascal允许一行写多个语句,一个语句可以分写在多行上,这样就可以使Pascal程序写得象诗歌格式一样优美,便于阅读,但一行不可超过257个字符。Pascal缺点•网络支持•面向对象•GUI第二讲Pascal程序结构Pascal程序例子programex(input,output);usescrtlabel1;constpi=3.1415926;typeint:0..1000;varr:int;s:real;functionfac(r:int):real;vars:real;begins:=r*pi*r;fac:=s;end;proceduresum;begins:=fac(r);end;begin1:ClrScr;write(‘r=‘);readln(r);sum;writeln(‘s=‘,s);readln;goto1;end.第三讲Pascal基本符号、保留字和标识符基本符号•ABCDEFGHIJKLMNOPQRSTUVWXYZ•abcdefghijklmnopqrstuvwxyz•0123456789•+-*/===()[]{}:=.,:;‘..^保留字•(1)程序、函数、过程符号:program,function,procedure•(2)说明部分专用定义符号:array,const,file,label,of,packed,record,set,type,var•(3)语句专用符号:case,do,downto,else,for,forward,goto,if,repeat,then,tountil,while,with•(4)运算符号:and,div,in,mod,not,or•(5)分隔符号:begin,end•(6)空指针常量:nil•共36个•补充:unitimplementationinterfacestring……标识符•要求•标准标识符•自定义标识符要求•以字母或下划线开头的数字字母下划线序列•例:a、ab、a1、max、_12、_ab211、a_1、a_等自定义标识符使用时的注意要点•不能与保留字同名•如果与标准标识符同名,强行改变标准标识符原来意义•最好有一定意义,使程序具有可读性•可以使用大写、小写、大小写混用,意义不变第四讲Pascal标准数据类型、常量与变量常用数据类型•整型(整数类型)•实型(实数类型)•字符型•布尔类型•枚举类型•子界类型•数组类型•集合类型•记录类型•文件类型•指针类型•对象类型常量•定义以后不能改变值的•如:•constst=‘abc’•句型:const自定义标识符=值变量•定义以后可以改变值的•如:•vari:integer;•句型:var自定义标识符:数据类型第五讲Pascal标准函数、过程、运算符与表达式函数与过程•子程序•过程procedure•函数function运算符运算符操作数类型结果类型算术运算+,-,*整型或实型整型或实型/整型或实型实型div,mod整型整型关系运算=,除文件类型以外各种数据类型布尔,标准类型,枚举型,子界型=,=标准类型,枚举型,子界型,集合in顺序类型、集合逻辑运算not,and,or,xor布尔布尔集合运算+,-,*集合集合赋值运算:=除文件类型以外各种数据类型除文件类型以外各种数据类型表达式•表达式指由常量、变量、函数、括号、集合及运算符连接起来的式子。表达式中的变量必须要有一个明确的值,单个的常量、变量、函数都可以看成是一个表达式•运算先后顺序•not•*,/,div,mod,and•+,-,or•关系运算符、in句型•:=•变量名/函数名:=表达式例题•例2.5.1•两个数差为100布尔表达式:1:abs(a–b)=100;2:(a+100=b)or(a–100=b)例题•例2.5.2•能够被3和5整除布尔表达式:1:(amod3=0)and(amod5=0)2:amod(3*5)=0例题•例2.5.3•闰年表达式:(yearmod400=0)or(yearmod4=0)and(yearmod1000)例题•例2.5.4•求圆周长语句:1:s=3.14*r*r;2:s=3.14*sqr(r);第三章程序设计初步目录•第一讲读入语句与输出语句•第二讲复合语句•第三讲if语句及if语句的嵌套•第四讲case语句•第五讲for循环•第六讲while循环与repeat循环•第七讲goto语句•第八讲小技巧第一讲读入语句与输出语句读入语句•语法:•read(…)•readln(…)•技巧:•读入回车后退出程序:readln;end。输出语句•语法:•write(…)•writeln(…)•小技巧:•场宽例题•例3.1.3:读入两个实型,交换后输出,精确到0.01。programp3_1_3_1(input,output);vara,b,c:real;beginreadln(a,b);c:=a;a:=b;b:=c;writeln(a:0:2,b:0:2);readln;end.例题•例3.1.3:读入两个实型,交换后输出,精确到0.01。programp3_1_3_2(input,output);vara,b:real;beginreadln(a,b);a:=a+b;b:=a–b;a:=a–b;writeln(a:0:2,b:0:2);readln;end.例题•读入一个整数,将其平方后减去原数的绝对值,最后求值的平方根,输出最后的值,保留整数。programp3_1_4(input,output);varn:integer;beginreadln(n);writeln(sqrt(n*n-abs(n)):0:0);readln;end.第二讲复合语句语法•复合语句begin…………end;•end前句子末尾可不加’;’第三讲if语句及if语句的嵌套语法•if+(boolean表达式)+then+句子•if+(boolean表达式)+then+句子1+else+句子2•注意:else前句子末尾不加“;”例题•例3.3.1:将两个整数大的放入max,小的放入min,并输出。programp3_3_1(input,output);varmax,min,t:integer;beginreadln(max,min);ifmaxminthenbegint:=max;max:=min;min:=t;end;writeln(max,min);readln;end.例题•例3.3.2:计算下列函数y=10-1x0x=0x0programp3_3_2(input,output);varx,y:integer;beginreadln(x);ifx0theny=-1elseifx=0theny=0elsey=1;writeln(y);readln;end.例题•例3.3.3:读入三个数排序programp3_3_3(input,output);vara,b,c:integer;beginreadln(a,b,c);ifabthenifbcthenwriteln(a,’’,b,’’,c)elseifacthenwriteln(a,’’,c,’’,b)elsewriteln(c,’’,a,’’,b)elseifcbthenwriteln(c,’’,b,’’,a)elseifacthenwriteln(b,’’,a,’’,c)elsewriteln(b,’’,c,’’,a);readln;end.第四讲case语句语法•case语句case表达式of常数表1:语句1;常数表2:语句2;……常数表n:语句n;else语句n+1end;•end前句子末尾可不加’;’,end与case相对,而非begin•else前可加’;’例题•例3.4.1:随机产生两个数,读入一个符号,并运算。programp3_4_1(input,output);vara,b:integer;ch:char;beginrandomize;a:=random(100);b:=random(100);readln(ch);casechof‘+’:writeln(a,’+’,b,’=’,a+b);‘-’:writeln(a,’-’,b,’=’,a-b);‘*’:writeln(a,’*’,b,’=’,a*b);‘/’:writeln(a,’/’,b,’=’,a/b);end;readln;end.第五讲for循环语法•for变量:=表达式to表达式do语句•for变量:=表达式downto表达式do语句•要求:•to循环初值=终值•downto循环初值=终值•变量:顺序类型例题•例3.5.1:输出从1到100所有的整数。programp3_5_1(i

1 / 284
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功