PASCAL语言程序设计(3)

2019-04-16 00:40

123456

(2)writeln(1,2,3,4); write(5,6); 输出为: 1234 56

例1-10 请写出下面程序的输出结果。 const a=20; var b:integer; begin b:=60;

writeln(100); writeln(b); writeln(a+b);

writeln('A+B=',a+b) end.

【输出结果】

100 //直接输出该常量的值

60 //输出该变量存储单元内的内容 80 //输出计算的结果

A+B=80 //原样输出字符串中的内容及输出a+b表达式的结果 4.输出语句的输出格式

在Pascal语言中,我们将每一种类型的数据在输出时所占据的列数称为场宽,下表是Pascal对各种数据定义的标准场宽(要注意各种计算机系统对标准场宽的约定不同):

数据类型 整数 实型(real、single) 布尔型 4或5 字符型 1 Pascal对各种数据定义的标准场宽 标准实例 输出结果 场宽 实际WRITE(1234); 1234 整数长度 23 Write(3/7); 4.285714285714285E-001 T:=false;write(t); FALSE Write('A'); 字符串型 串长 Write('Pascal') A Pascal

在编程时,我们除了可以使用上表中的标准场宽,还可以根据实际需要自己来定义要输出数据的场宽,自定义场宽分为单场宽和双场宽。

(1)单场宽

11 / 53

格式:X:n,其中X表示要输出的项目,n表示输出X时所占的位数,应为正整数。如:writeln(‘PAS ‘:5);表示项目字符串’PAS’的场宽为5。它主要用来输出整型、字符型、布尔型的数据。

例1-11 设M为整型数2009,CH为字符’#’,F为布尔值FALSE,此时执行如下输出语句:

writeln (M:5); writeln (CH:5); writeln (F:5);

writeln (‘PAS’:5); 则屏幕显示: □2009 □□□□# FALSE □□PAS (2)双场宽

格式:X:n1:n2,双场宽是用来输出实型数据的。其中:X表示要输出的项目,n1表示输出X时所占总位数,包括符号位、整数部分、小数点与小数部分,n2表示小数部分的位数,当n2小于实际小数位数时,要对舍去的小数位数进行四舍五入。当n2大于实际小数位数时,右边以零补齐。

要注意的是,在数据不突破场宽限制时,一律按场宽定义输出,在数据突破了场宽限制时,则强行将场宽扩展到所需要的位数,所以有时输出限制仅有小数位N2时,一般设总场宽为0,即:X:0:N2,如对X要求保留两位小数,写法为:writeln(X:0:2);

例1-12 写出以下程序的输出结果: program aa;

var a:integer; b:real; c:char; d:boolean; begin

a:=1234;

b:=1234.6793; c:='$'; d:=false;

writeln(a,a:5); writeln(b,b:12:2); writeln(b:0:2) writeln(c,c:5); writeln(d,d:5); writeln('OK':5); end.

【输出结果】 1234□1234

□ 1.234679300000000E+003□□□□□1234.68 1234.68 $□□□□$ FALSEFALSE □□□OK

习题

1-1 在屏幕上打印一行字符:\,请同学们将以下程序输入计算机内并运行。(运行程序:Ctrl+F9,查看程序运行:Alt+F5) program k101;

12 / 53

begin

writeln('This is my first program!'); end.

1-2 编写一个减法程序,输入两个整数(<30000),输出这两个整数的差(第一个数减去第二个数)。

【样例输入】30 10 【样例输出】20

1-3 编写一个乘法程序,输入两个整数(<100),输出这两个整数的乘积。 【样例输入】20 10 【样例输出】200

1-4 输入正方形的边长(边长为整数),求正方形的面积? 【样例输入】5 【样例输出】25

1-5 小明的妈妈给小明100元钱,让他去文具商店买他自己所需要的文具,他买了10元1支的钢笔2支,花5元买了一瓶蓝色墨水,批发了23元的作业本,最后,走的时候又买了1支1元的冰糕吃着走了,现在问小明最后还剩多少钱?

1-6 求任意长a和宽b的长方形的周长c。总场宽为10,保留两位小数。 【分析】长方形周长c=2*(长a+宽b)。

【样例输入】2 3 【样例输出】c= 10.00

1-7 已知三角形的底为5,高为10,求三角形的面积?要求保留两位小数。 【分析】三角形的面积S=1/2*底a*高h。 【输出结果】 25.00 1-8 判断程序运行结果 program aa;

var a,b:integer; begin a:=3; b:=a; b:=a+1; a:=a+1; b:=b+1;

writeln(a,' ',b); end.

1-9 输入三个整数a,b,c(0

【样例输入】5 10 20 【样例输出】0.50 200

1-10 用键盘输入两个整数a,b (0b的值。 【样例输入】12 9 【样例输出】TRUE

1-11 有三个小朋友甲乙丙。甲有50粒糖果,乙有43粒糖果,丙有13粒糖果。现在他们做一个游戏,从甲开始,将自己的糖分三份,自己留一份,其余两份分别给乙与丙,多余的糖果自己吃掉,然后乙与丙也依次这样做,问最后甲、乙、丙三人各有多少粒糖果?

1-12 试编一程序,输入一梯形的上底a、下底b、高h,求该梯形的面积s。结果保留3位小数。

【分析】梯形面积s=(a+b)*h/2,a,b,h,s均为实数。 【样例输入】12.5 9.2 8 【样例输出】86.800

1-13 已知A1、A2和A3的布尔值分别是:True、False、False,计算下列表达式的值。

(1)not a1 and not a2= (2)al or a2 and a3= (3)(not a1 or a2) and (a2 or a3)=

1-14 输入两个整数,将两个数交换值后输出。 【样例输入】26 90 【样例输出】90 26

1-15 输入一个字符,打印出它的前导值、后继值和序号。每一项中间隔一空格,最后无空格。

【样例输入】D 【样例输出】C E 68

13 / 53

1-16 读入摄氏温度c,写程序将它转换成华氏温度f输出。已知f=9/5*c+32。

1-17 输入一个三位自然数,把这个数的百位与个位数对调,输出对调后的自然数。 【样例输入】312 【样例输出】213

14 / 53

第二章 程序的三种基本结构 第一节 顺序结构

若程序按照语句的书写先后顺序逐句执行,直到程序的结束,这种程序结构我们称为顺序结构。这是程序设计中最简单的一种结构。如程序中N个语句:

语句1; 语句2; ?? 语句N;

若运行时的顺序是语句1执行后执行语句2,语句2执行后执行语句3,?直到语句n-1执行后执行语句N。那么程序中语句1;??语句N;便是一个顺序结构的部分,它是结构化程序设计的基础。注意每条语句以分号表示结束。

第二节 选择结构

一、复合语句

复合语句的一般形式是: BEGIN

语句1; 语句2; ?? 语句n; END;

在这里,BEGIN与END起语句括号的作用,相当于使用了一个语句括号将若干语句括了起来,做一个语句处理。程序运行时,通常是按书写的顺序去执行复合语句内的各个语句。

二、条件语句(IF语句)

1.格式:IF语句有以下两种标准格式: (1)if 条件表达式 then 语句;

(2)if 条件表达式 then 语句1 else 语句2; 2.功能

(1)格式1的IF语句的执行过程是:若条件关系式的条件为真,则执行THEN后面的语句,当条件不成立时,退出IF结构,去执行IF语句下面的语句。

(2)格式2的IF语句的执行过程是:若条件关系式的条件为真,则执行THEN后面的语句,否则执行ELSE后面的语句。要特别注意else前面的语句1最后不能有分号,因为分号是两个语句之间的分隔符,而else并非语句,如果在该处添了分号,则在编译的时候就会认为if 语句到此结束,而把else当作另一句的开头,输出出错信息。

例2-1 输入两个整数a,b,将它们由小到大输出。 【样例输入】56 32 【样例输出】32 56 【参考程序】 program aa;

var a,b,t:integer; begin

read(a,b);

if a>b then //如果第一个数大于第二个数,则两个数互换 begin

t:=a; a:=b; b:=t; //两个数互换

15 / 53


PASCAL语言程序设计(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:金融衍生工具期末复习总结

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: