没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
全国青少年信息学奥赛培训教程
0
目 录
第一章 初识 pascal 语言 …………………………………………………………………1
第二章 简单程序设计
第一节 数据类型、常量、变量……………………………………………………………4
第二节 赋值语句 ………………………………………………………………………… 7
第三节 输出语句(WRITE 语句)
……………………………………………………………8
第四节 输入语句(READ 语句)
……………………………………………………………9
第五节 顺序结构程序设计……………………………………………………………… 13
第三章 选择结构的程序设计
第一节 如果语句(IF 语句)………………………………………………………………14
第二节 IF 语句的嵌套……………………………………
………………………………17
第三节 情况语句(CASE 语句)……………………………………………………………19
第四节 综合应用………………………………………………………………………… 20
第四章 循环结构的程序设计
第一节 循环语句(FOR 语句) ……………………………………………………………21
第二节 当语句(WHILE 语句) ……………………………………………………
………23
第三节 直到循环(REPEAT 语句)………………………………………………
………24
第四节 多重循环结构…………………………………………………………………… 26
第五章 枚举和子界类型
第一节 枚举类型…………………………………………………………………………28
第二节 子界类型……………………………………………………………………
……31
第六章 数 组
第一节 一维数组…………………………………………………………………………33
第二节 多维数组…………………………………………………………………………
38
第三节 数组类型的应用…………………………………………………………………
40
第七章 函数与过程
第一节 函数……………………………………………………………………………… 43
第二节 过程………………………………………………………………………………
47
第三节 递推算法………………………………………………………………………… 53
第四节 递归算法………………………………………………………………………… 54
第八章 集合和记录类型
第一节 集合类型………………………………………………………………………… 61
第二节 记录类型………………………………………………………………………… 64
第三节 综合应用实例…………………………………………………………………… 67
第九章 文件………………………………………………………………………………… 69
第十章 字符串处理
第一节 字符与字符串类型……………………………………………………………… 78
第二节 字符串的操作…………………………………………………………………… 79
第三节 字符串的综合应用……………………………………………………………… 82
第十一章 算法初步
第一节 回溯算法………………………………………………………………………… 84
第二节 贪心算法………………………………………………………………………… 88
第三节 分治算法………………………………………………………………………… 90
第四节 穷举算法………………………………………………………………………… 93
第五节 动态规划………………………………………………………………………… 97
【友情提示】 邮购联系电话:0591-28717456 电子信箱:abc@fjclyz.com
全国青少年信息学奥赛培训教程
1
第一章 初识 Pascal 语言
一、Pascal 语言概述
PASCAL 语言也是一种算法语言,它是瑞士苏黎世联邦工业大学的 N.沃思(Niklaus Wirth)教授于 1968
年设计完成的,1971 年正式发表。1975 年,对 PASCAL 语言进行了修改,作为"标准 PASCAL 语言"。
PASCAL 语言是在 ALGOL 60 的基础上发展而成的。它是一种结构化的程序设计语言,可以用来编写应
用程序。它又是一种系统程序设计语言,可以用来编写顺序型的系统软件(如编译程序)。它的功能强、
编译程序简单,是 70 年代影响最大一种算法语言。
二、Pascal 语言的特点
从使用者的角度来看,PASCAL 语言有以下几个主要的特点:
⒈它是结构化的语言。PASCAL 语言提供了直接实现三种基本结构的语句以及定义"过程"和"函数"(子
程序)的功能。可以方便地书写出结构化程序。在编写程序时可以完全不使用 GOTO 语句和标号。这就易于
保证程序的正确性和易读性。PASCAL 语言强调的是可靠性、易于验证性、概念的清晰性和实现的简化。在
结构化这一点上,比其它(如 BASIC,FORTRAN77)更好一些。
⒉有丰富的数据类型。PASCAL 提供了整数、实型、字符型、布尔型、枚举型、子界型以及由以上类型
数据构成的数组类型、集合类型、记录类型和文件类型。此外,还提供了其它许多语言中所没有的指针类
型。沃思有一个著名的公式:"算法+数据结构=程序"。指出了在程序设计中研究数据的重要性。丰富的
数据结构和上述的结构化性质,使得 PASCAL 可以被方便地用来描述复杂的算法,得到质量较高的程序。
⒊能适用于数值运算和非数值运算领域。有些语言(如 FORTRAN 66,ALGOL 60)只适用于数值计算,
有些语言(如 COBOL )则适用于商业数据处理和管理领域。PASCAL 的功能较强,能广泛应用于各种领域。
PASCAL 语言还可以用于辅助设计,实现计算机绘图功能。
⒋PASCAL 程序的书写格式比较自由。不象 FORTRAN 和 COBOL 那样对程序的书写格式有严格的规定。
PASCAL 允许一行写多个语句,一个语句可以分写在多行上,这样就可以使 PASCAL 程序写得象诗歌格式一
样优美,便于阅读。
由于以上特点,许多学校选 PASCAL 作为程序设计课程中的一种主要的语言。它能给学生严格而良好
的程序设计的基本训练。培养学生结构化程序设计的风格。但它也有一些不足之处,如它的文件处理功能
较差等。
三、Pascal 语言程序的基本结构
任何程序设计语言都有着一组自己的记号和规则。PASCAL 语言同样必须采用其本身所规定的记号和规
则来编写程序。尽管不同版本的 PASCAL 语言所采用的记号的数量、形式不尽相同,但其基本成分一般都
符合标准 PASCAL 的规定,只是某些扩展功能各不相同罢了。下面我们首先来了解 Pascal 语言的程序基本
结构。
为了明显起见先举一个最简单的 PASCAL 程序例子:
【例1】输入半径 r,求圆的周长和面积。
全国青少年信息学奥赛培训教程
2
从这个简单的程序可以看到:
1.一个 PASCAL 程序分为两个部分:程序首部和程序体(或称分程序)。
2.程序首部是程序的开头部分,它包括:
⑴程序标志。用 "program"来标识"这是一个 PASCAL 程序"。PASCAL 规定任何一个 PASCAL 程序的首部
都必须以此字开头。在 turbo pascal 语言中,首部也可省略。
⑵程序名称。由程序设计者自己定义,如例中的 exam1。
在写完程序首部之后,应有一个分号。
3.程序体是程序的主体,在有的书本里也称"分程序"。程序体包括说明部分(也可省略)和执行部分
两个部分。
⑴说明部分用来描述程序中用到的变量、常量、类型、过程与函数等。本程序中第二行是"变量说明",
用来定义变量的名称、类型。
PASCAL 规定,凡程序中用到所有变量、符号常量、数组、标号、过程与函数、记录、文件等数据都
必须在说明部分进行定义(或称"说明")。也就是说,不允许使用未说明先使用。
⑵执行部分的作用是通知计算机执行指定的操作。如果一个程序中不写执行部分,在程序运行时计算
机什么工作也不做。因此,执行部分是一个 PASCAL 程序的核心部分。
执行部分以"begin"开始,以"end"结束,其间有若干个语句,语句之间以分号隔开。
执行部分之后有一个句点,表示整个程序结束。
⒋PASCAL 程序的书写方法比较灵活。当然,书写不应以节省篇幅为目的,而应以程序结构清晰、易读
为目的。在编写程序时尽量模仿本书中例题程序格式。
⒌在程序中,一对大括号间的文字称为注释。注释的内容根据需要书写,可以用英语或汉语表示。注
释可以放在任何空格可以出现的位置。执行程序时计算机对注释不予理睬。
四、Turbo Pascal 语言系统的使用
目前,常用的 Pascal 语言系统有 Turbo Pascal7.0 与 Borland Pascal 7.0,下面我们就来学习 Turbo
Pascal 7.0 系统的使用。
1.系统的启动
在运行系统目录下的启动程序 TURBO.EXE,即可启动系统。屏幕上出现如图 1 所示的集成环境。
2.Turbo Pascal 系统集成环境简介
最顶上一行为主菜单。中间蓝色框内为编辑窗口,在它个编辑窗口内可以进行程序的编辑。最底下一
行为提示行,显示出系统中常用命令的快捷键,如将当前编辑窗口中文件存盘的命令快捷键为 F2,获得系
统帮助的快捷键为 F1,等等。
全国青少年信息学奥赛培训教程
3
3.新建程序窗口
按 F10 进行主菜单,选择 FILE 菜单,执行其中 New 命令。就可建立一个新的程序窗口(默认文件名
为 Noname00.pas 或 Noname01.pas 等)。
4.程序的输入、编辑
在当前程序窗口中,一行一行的输入程序。事实上,程序窗口是一个全屏幕编辑器。所以对程序的编
辑与其它编辑器的编辑方法类似,这里不再重复。
5.编译程序
当程序输入完毕之后,一般要先按 Alt+F9(或执行 compile 菜单中 compile 命令)对程序进行编译。
如果程序有语法错误,则会在程序窗口的第一行处显示第一个红色错误信息。若无语法错误,则窗口正中
央会出现一个对话框,提示编译成功。接下来,我们可以运行程序了。如果在编译过程中发现程序有语法
错误,系统会提示第一个错误信息。如"';'expected",提示缺少分号;"')'expected",提示缺少右括
号。此时,应有针对性的进行修改。修改后,再重复编译的过程,直到编译成功。
6.运行程序
程序的运行可以通过按 ALT+R 打开 RUN 菜单中的 RUN 命令,或直接按快捷键 CTRL+F9。则可以在用户
窗口中输出运行结果。通常在程序运行结束后系统回到 Pascal 系统的集成环境,因此要查看运行结果,
要按 ALT+F5 将屏幕切换到用户屏幕。
下面是该程序的运行结果
* * * * * *
* * * * * *
* * * * * *
* * * * * *
7.程序的保存与打开
选择主菜单 File 中的菜单项 Save,或按快捷键 F2,在出现的如图的对话框中输入文件名:tu.pas,
单击""OK,则程序就以 tu.pas 为文件名保存在当前目录中了。
全国青少年信息学奥赛培训教程
4
第二章 简单程序设计
我们学习了 Pascal 语言的程序基本结构,在一个程序中,所有的操作都由执行部分来完成,而执行
部分又都是由一个个语句组成的。因此,下面开始我们要学习 pascal 语言的基本语句,并且在学习过程
中逐步学会程序设计的基本方法。
这节课我们要学习两种语句,即赋值语句与输出语句。在语句学习之前我们要先了解一些 pascal 语
言的基础知识。
第一节 数据类型、常量、变量
一、 常量、变量与算术表达式
(一)常量
在程序运行过程中,其值不能被改变的量称为常量。如 123,145.88,'abc',true 等。
⒈整型常量
整型常量采用我们平常使用的十进制整数表示。如 138,0,-512 等都是整型常量,而 18.或 18.0 都不
是整型常量。
pascal 中有一个标准标识符 Maxint,它代表所使用的计算机系统允许的最大整型数,而最小的整型
数即为-Maxint-1。
Turbo Pascal 还定义了长整数常量 MaxLongInt,其值为 2147483647。
⒉实型常量
实型常量包括正实数、负实数和实数零。pascal 中表示实型常量的形式有两种。
⑴十进制表示法
这是人们日常使用的带小数点的表示方法。
如 0.0,-0.0,+5.61,-8.0,-6.050 等都是实型常量,而 0.,.37 都不是合法的实数形式。
⑵科学记数法
科学记数法是采用指数形式的表示方法,如 1.25×10
5
可表示成 1.25E+05。在 科学记数法中,字 母“ E”
表示 10 这个“底数”,而 E 之前为一个十进制表示的小数,称为尾数,E 之后必须为一个整数,称为“指
数”。
如-1234.56E+26 , +0.268E-5 , 1E5 是合法形式,而.34E12 , 2.E5 , E5 ,E,1.2E+0.5 都不是合法
形式的实数。
无论实数是用十进制表示法还是科学表示法,它们在计算机内的表示形式是一样的,总是用浮点方式
存储。
和整数相比,实数能表示的范围大得多,但值得注意的是实数的运算整数的运算速度慢且无法像整数
那样精确表示,只能近似表示。
⒊字符常量
在 Pascal 语言中,字符常量是由单个字符组成,所有字符来自 ASCII 字符集,共有 256 个字符。在
程序中,通常用一对单引号将单个字符括起来表示一个字符常量。如:’a’,’A’,’0’等。特殊地,
对于单引号字符,则要表示成’’’’。对于 ASCII 字符集中,按每个字符在字符集中的位置,将每个字
符编号为 0-255,编号称为对应字符的序号。
4.布尔常量
布尔型常量仅有两个值,真和假,分别用标准常量名 true 和 false 表示。它们的序号分别为 1 和 0。
5.符号常量
一个常量即可以直接用字面形式表示(称为直接常量, 如 124,156.8),也可以用一个标识符来代表
一个常量,称为“符号常量”。但符号常量必须在程序中的说明部分定义,也就是说先定义,后使用。
定义符号常量的一般格式:
CONST
<常量标识符>=<常量>
说明:常量说明部分以关键字 const 开头, 后面的标识符为常量标识符,其中“=”号后的常量为整
数、实数、字符、 字符串(字符、字符串常量在后面章节中将作介绍)。而且,在常量说明部分可以将几
个常量说明成符号常量,共用一个关键字“const”。例如:
剩余104页未读,继续阅读
资源评论
- JYaung2019-03-24内容很丰富,最可贵的是资源不需要很多积分.
- sosopain2017-07-13入门数据结构的好帮手阿..
- kakaja2014-12-16高清,是学习理论的好资料。
jjxxjjxx
- 粉丝: 2
- 资源: 19
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功