资源预览内容
第1页 / 共54页
第2页 / 共54页
第3页 / 共54页
第4页 / 共54页
第5页 / 共54页
第6页 / 共54页
第7页 / 共54页
第8页 / 共54页
第9页 / 共54页
第10页 / 共54页
亲,该文档总共54页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
化州一中信息学竞赛辅导化州一中信息学竞赛辅导 1第一章第一章 PascalPascal 语言概述与语言概述与基本基本知识知识1 关于 Pascal 语语言Pascal 是一种计算机通用的高级程序设计语言。它由瑞士 Niklaus Wirth 教授于六十 年代末设计并创立。以法国数学家命名的 Pascal 语言现已成为使用最广泛的基于 DOS 的语言之一,其主要 特点有:严格的结构化形式;丰富完备的数据类型;运行效率高;查错能力强。正因为上述特点,Pascal 语言可以被方便地用于描述各种算法与数据结构。尤其是对 于程序设计的初学者,Pascal 语言有益于培养良好的程序设计风格和习惯。IOI(国际奥林 匹克信息学竞赛)把 Pascal 语言作为三种程序设计语言之一, NOI(全国奥林匹克信息学竞 赛)把 Pascal 语言定为唯一提倡的程序设计语言,在大学中 Pascal 语言也常常被用作学习 数据结构与算法的教学语言。在 Pascal 问世以来的三十余年间,先后产生了适合于不同机型的各种各样版本。其中 影响最大的莫过于 Turbo Pascal 系列软件。它是由美国 Borland 公司设计、研制的一种适 用于微机的 Pascal 编译系统。 该编译系统由 1983 年推出 1.0 版本发展到 1992 年推出的 7.0 版本,其版本不断更新,而功能更趋完善。下面列出 Turbo Pascal 编年史1983 Turbo Pascal 1.0 Turbo Pascal 2.0 Turbo-87 Pascal 提高实数运算速度并扩大值域 1985 Turbo Pascal 3.0 增加图形功能 Turbo BCD Pascal 特别适合应用于商业 1987 Turbo Pascal 4.0 提供集成开发环境(IDE),引入单元概念 1988 Turbo Pascal 5.0 增加调试功能 1989 Turbo Pascal 5.5 支持面向对象的程序设计(OPP) 1990 Turbo Pascal 6.0 提供面向对象的应用框架和库(Turbo Vision)化州一中信息学竞赛辅导化州一中信息学竞赛辅导 21992 Turbo Pascal 7.0 面向对象的应用系统、更完善的 IDE Turbo Vision 2.0 1993 Borland Pascal 7.0 开发 Object Windows 库、 (For Windows) 提供对 OLE 多媒体应用开发的支持 1995 Delphi Visual PascalTurbo Pascal 语言是编译型程序语言,它提供了一个集成环境的工作系统,集编辑、 编译、运行、调试等多功能于一体。1.2 Turbo Pascal 或 Borland Pascal 的启动(1) Turbo Pascal 的启动a.DOS 下的启动(适用于 MS-DOS6.22 之前的版本或 Win 9X 程序首部已知半径求圆的面积const pi=3.14159;说明部分数据描述var s,r:real;begin执行部分readln(r);s:=pi*sqr(r);writeln(s=,s);end.上述程序第一行称为程序首部。其中用花括号(注释可以用 或(* *)来表示)括起 来的内容是注释,程序第二行就是一个注释,注释除了给人看,增加程序的可读性外,对程 序编译和运行不起作用。一个程序可以包含多个出现在不同处注释,亦可无注释。程序第三 行是常量说明,程序第四行是变量说明。程序从 begin 到 end 都是执行(语句)部分(1)程序首部例 1.1 的第一行称为程序首部。 program 是保留字, 接着是程序名 (由你依据“标示符” 规则自行定义),最后以分号表示程序首部结束,下面是程序主体的开始。程序首部在一个 Turbo Pascal(仅在 Turbo Pascal 中有效)程序中并非必须出现,它是可选的。写上它仅 起了文档作用。因此,在时间有限的情况下,如果用 Turbo Pascal 编程完全可以省略程序 首部。(2)程序体a.说明部分说明部分用于定义和说明程序中用到的数据, 由单元说明、 标号说明、 常量说明、 类型说明、 变量说明、函数或过程说明组成,并且这些数据的说明次序必须按照以上次序。但是一个简 单的 Turbo Pascal 程序也可以不包含说明部分,也就是说说明部分是可选的。化州一中信息学竞赛辅导化州一中信息学竞赛辅导 4b.执行部分执行部分描述了程序要执行的操作。它必须以一个 Turbo Pascal 保留字 begin 开始,以保留字 end 后跟句点结束, 其间是一些执行具体操作的语句, 并且以分号作为语句之间的分隔 符。begin 和 end 必须成对出现,这是一个 Turbo Pascal 程序所必须有的。紧跟 end 之后 的句号表示执行部分的结束, 也表示整个程序的结束。 此后的任何语句都无效。 Turbo Pascal 规定紧随 end 之前出现的分号允许省略。(3)一个完全的 Pascal 程序结构program 程序名;uses已知单元说明;label标号说明;const常量说明;type类型说明;var变量说明;function函数说明;procedure过程说明;begin语句;语句;化州一中信息学竞赛辅导化州一中信息学竞赛辅导 5语句end.2.22.2 PascalPascal 字符与符号字符与符号1.保留字(关键字)所谓保留字是指在 Pascal 语言中具有特定的含义,你必须了解它的含义,以便于正确 的使用,否则会造成错误。标准 Pascal 语言中的保留字一共有 35 个,Turbo Pascal 语言 一共有 51 个。下面是 Pascal 语言的保留字(斜体是 Turbo Pascal 特有的保留字):AND,ARRAY,BEGIN,CASE,CONST,DIV,DO,DOWNTO,ELSE,END,FILE,FOR,FUNTION, GOTO,IF,IN,LABEL,MOD,NIL,NOT,OF,OR,PACKED,PROCEDURE,PROGRAM,RECORD, REPEAT,SET,THEN,TO,TYPE,UNTIL,VAR,WHILE,WITH,EXPORTS,SHR,STRING,ASM, OBJECT,UNIT,CONSTRUCTOR,IMPLEMENTATION,DESTRUCTOR,USES,INHERITED,INLINE, INTERFACE,LIBRARY,XOR,SHL.标识符(1)表识符的定义:标识符就是以字母开头的字母数字序列,有效长度为 63 个字符, 并 且大小写等效。可以用来标示常量、变量、程序、函数等。例如例 1.1 中的 Area(程序名), pi(符号常量),s、r(变量名)都是标识符。(2)表识符的分类:a.标准标识符:指 Pascal 语言预先定义的表识符,具有特殊含义。以下列举了 Turbo Pascal 语言部分常用的标准表识符:标准常量 False Maxint True 标准类型 Boolean Char Real Integer 标准函数 Abs Arctan Chr Cos Eof Eoln Exp Ln Odd Ord Pred Round Sin Sqr Sqrt Succ Trunc 标准过程 Dispose Get New Pack Page Put Read Readln Reset Rewrite Unpack Write Writeln 标准文件 Input Outputb.用户字定义表识符:由你来根据需要定义。(1)选用的表识符不能和保留字相同。(2)语法上允许预定义的标准标识符作为你定义的的表识符使用,但最好还是不要用。化州一中信息学竞赛辅导化州一中信息学竞赛辅导 6以下列举了你在定义表识符时可以用的字符: AZ; az; 09; +, -, *, /, =, 7Turbo Pascal 支持两种用于执行实型运算的代码生成模式:软件仿真模式和 80x87 浮 点模式。除了 real 可以在软件仿真模式下直接运行以外,其他类型必须在 80x87 浮点模式 下运行。3.布尔型 一个布尔型数据用来存放逻辑值(布尔值)。布尔型的值只有两个:false 和 true, 并 且 false 的序号是 0,true 的序号是 1。false 和 true 都是预定义常数表识符,分别表示 逻辑假和逻辑真。并且 true=; . =; 常量表识符的类型由定义它的常量的类型决定。 例如: const a=12 隐含说明 a 是整型; const r=3.21 隐含说明 r 是实型. (3)常量定义部分必须以保留字 const 开头,可以包含一个或几个常量定义,而且每个常量 均以分号结束。 (4)Turbo Pascal 类型常量 类型常量,又称变量常数,它是 Turbo Pascal 的一个扩充特性。类型常量的定义与标准 Pascal 规定的常数定义和变量说明有所区别。类型常量定义的语法格式: const :简单类型=常数; 例如: const counter:integer=0; flag:boolean=true; index:0.100=0; 2.变量 (1)变量:在某个程序中的运行过程中其值可以发生改变的量 (2)变量说明:变脸说明出现在说明部分。它的语法格式是: var :; . :; 其中, 保留字 var 表示开始一个变量说明部分。 变量标识符列表是一个用逗号隔开的标识符 序列,冒号后面的类型是类型标识符。每个变量说明均以分号结束。 例如: var化州一中信息学竞赛辅导化州一中信息学竞赛辅导 8a,b,c:integer; m,n:real; 2.5标准函数 1.算术函数abs 绝对值 exp 指数 frac 小数部分 int 整数部分 ln 自然对数 pi 圆周率sqr 平方 sqrt 平方根 abs(-4)=4 abs(-7.49)=7.49 frac(-3.71)=-0.71 int(-3.71)=-3.0 sqr(4)=16 sqrt(4)=22.标量函数函数标识符 自变量类型 意义 结果类型 odd 判断奇数 pred 求前趋 succ 求后继 例:odd(1000)=false odd(3)=true pred(2000)=1999 succ(2000)=2001 pred(x)=w succ(x)=y3.转换函数chr 自量对应的字符 ord 自量对应的序号 longint化州一中信息学竞赛辅导化州一中信息学竞赛辅导 9round 四舍五入 trunc 截断取整 longint4.杂类函数random 无自变量 0,1)之间的随机实数 real random word 0,自变量)之间的随机整数 wird randomize 无自变量 用一随机值初始化内部随机数产生器 longint upcase 字符型 使小写英文字母变为大写 字符型2.6运算符和表达式 1.运算符和优先级 (1)运算符 a.算术运算符 运算符 运算 运算对象 结果类型 + 只要有一个运算对象是实型, 结果就是实型, 如果全部的运算对象都是整型并且运算 不是除法,则结果为整型,若运算是除法,则结果是实型 -减*乘/ 除div 整除mod 取余b.逻辑运算符化州一中信息学竞赛辅导化州一中信息学竞赛辅导 10not 逻辑非 and 逻辑与 or 逻辑或 xor 逻辑异或 c.关系运算符= 等于 ,=, 4(低)2.表达式 (1)算术表达式:算术表达式是由算术运算符连接常量、变量、函数的式子。算术表达式中 各个运算符的次序为: ( )函数*,/,div,mod+,1 (2)布尔表达式:Turbo Pascal 提供给布尔表达式以下
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号