FORTRAN语言第2章(共8章)

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

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

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

资源描述

第一节FORTRAN常量第二节FORTRAN变量第三节FORTRAN内部函数第四节算术表达式第五节赋值语句第六节表控输入/输出语句第七节END、PAUSE、STOP语句第二讲顺序结构程序设计第一节FORTRAN常量Fortran的语言元素是指在程序设计中所用到的基本成分,例如字符集、常量、变量、记号以及其它的基本结构等。只有了解并掌握了这些基本要素,才可能正确自如地使用该种语言。一、FORTRAN字符集★26个英文字母,(除了字符串内的字符外,程序中小写字母等价于相应的大写字母)★数字0~9★_(下划线)★22个特殊字符空格=+-*/(),:.$‘!”%&;?Fortran的源程序就是上述字符及符号按照词法、语法和语义的规定对算法的描述。在编写源程序时需要注意的是:(1)除字符型常量外,源程序中不区分字母的大小写,如语句“ReaLa”和“realA”是等价的。(2)字符集以外的可打印字符,只能出现在注释、字符常量、字符串编辑符和输入输出记录中。Fortran的字符集二、FORTRAN标识符第一节FORTRAN常量标识符即名称,是用来在程序中标识有关实体(如:变量、符号常量、函数、程序单元、公用块、数组、模块和形参等)。Fortran95规定:标识符只能由字母、数字、下划线和美元符号“$”组成,且起始字符必须是英语字母。Fortran的关键字关键字是Fortran95中的一种特定字符串。如read*,a,bread是关键字。类似的关键字有:print、write、program、integer、do、if、then、end、subroutine、function等。在编译环境中正确的关键字会以蓝色字符显示。关键字都有特定的含义,在程序中有具体的位置要求,不能随意改变,否则将产生一个语法错误。Fortran对于关键字不予保留,即允许其关键字作为其他实体的名称。但是,不主张这样做,因为使用关键字作为实体名称会到导致程序难以理解和阅读。例如:用户可以将自己的变量名、数组名等命名为read、print、end、integer、program、print、do等关键字,编译程序会根据上下文来识别一个字符串究竟是关键字还是实体名称。一个程序中,数据是程序加工处理的对象,而通过语句描述了对数据的具体操作。不同类型的数据具有不同的特性,在计算机内存中占有不同的存储长度,存储的方式不同,具有不同类型的运算。数据类型只是数据的形式化和抽象化描述,它说明一类数据的共同性质,而不是具体的数据对象。程序处理的数据必须是具体的数据对象,一个数据对象可以是常量、变量、数组或指针等,用户根据具体问题的需要定义数据对象的数据类型。三、FORTRAN常量常量定义:常量是在程序中直接生成并直接用于计算和处理,且在程序运行期间保持不变的数据。第一节FORTRAN常量例如:15、0、-21、.1416、256_2、(10.2,0.3)、’fortran’、”student”、.true.常量无需类型定义、直接由其表示形式可确定其数据类型。Fortran常量包括整型、实型、复型、字符型和逻辑型五种内部类型常量和一种特殊的常量——符号常量,下面分别介绍它们的表示方法及其注意事项。三、FORTRAN常量1、整型常量整型常量由0~9的一系列数字组成,包括正数、负数和0。如125,-258,+28等。注意:(1)Fortran95不允许整数内部出现非数值字符如“,”、“:”和空格;(F77中整数的空格被忽略,而F90及以上版本整数加入空格将产生错误)(2)整型常量不能有小数点;(3)正负号和数字之间可以保留空格。第一节FORTRAN常量三、FORTRAN常量1、整型常量整型数据:微机支持4种kind_Value:1,2,4,8(1)范围:-128~127(2)范围:-32768~32767(3)-2147483648~2147483647(-231~231-1)(4)-9223372036854775808~9223372036854775807IntegerF77默认kind_Value的值为2第一节FORTRAN常量三、FORTRAN常量2、实型常量实型常量又叫实数,有两种表示形式:小数形式和指数形式十进制小数形式:由整数部分、小数点及小数部分三部分组成,必须包含小数点。第一节FORTRAN常量例如:+12.5、-13.248、0.243、12.和.123十进制小数有3种不同表达形式:±n.m±n.±.mn代表整数部分,m代表小数部分,不允许出现非数值字符(如逗号、顿号和空格等)。三、FORTRAN常量2、实型常量指数形式:用来表示一个绝对值非常大或非常小的数。第一节FORTRAN常量指数形式的实数三部分组成:有效数字、E(或e)和指数。例如:+0.125E+2、-132.48e-1、243E-3、.12e+2,1.2e+11.32e5表示132000或1.32×105。1.285E-12表示1.285×10-12。指数形式的实数有下列四种表达方式:±n.mE±S±n.E±S±nE±S±.mE±Sn代表有效数字的整数部分,m代表有效数字的小数部分,最前面的正负号表示数值的正负。字符E后面是指数部分,正负号确定指数的正负,指数必须是十进制整数,表示10的多少次方。字符E前后均不能为空。有效数字部分和指数部分的数字遵循整数和小数形式实数的要求。若指数标识为D或d,则表示该实数为双精度实数。第一节FORTRAN常量指数形式应注意以下事情:有效数字可以是整型或实型常量,如1E2和1.0E2两者都表示100.0,它们等价,但它们与100是不等价的,因为100代表一个整型常量;E前面的数据不能省略,E后面的指数只能是整型常量,如5E3.2,E4.,.E8都是错误的指数表示。若指数标识为D或d,则表示该实数为双精度实数,等价于kind值为8,但不能指定kind值,即d指数不允许指定实型kind值。【例】判定下列实数,哪些是合法实数?哪些是非法实数?说明原因。0E00.E023.58E-2.51,234,567E-6.123E-112.3E$3¥125.5E001E+5-2.34E24.56E21.35E+311.24E+312.5D34合法实数有:0E0、0.E0、.123E-1、-2.34E2、1.35E+3、12.5D34。非法实数有:23.58E-2.5(指数部分不能为实数)9.8E3_3(非法的实型KIND值)1,234,567E-6(不能含非数值字符)12.3E$3(不能含非数值字符)¥125.5E001(不能含非数值字符)E+5(E前面不能为空)4.56E2(不能含非数值字符空格)11.24E+3(指数部分的正负号与数字之间不能有空格)在计算机输出数据时,只能按照一种标准的指数形式进行输出。不同的计算机系统采用不同的标准化指数形式,常用的标准化形式有二种。1.数字部分的绝对值小于1(即小数点前面的数字必须为0),且小数点后第一个数字必须为一个非0的数字。例如,0.1234E4、0.56E-3是标准化指数形式。对于不符合标准化条件的实数,可以通过改变指数部分的数值使其转变为标准化指数形式。例如实数0.0001234的标准化指数形式是0.1234E-3。2.数字部分的绝对值小于10且大于1(即小数点前只能有且只有一个非0数字)。例如,1.234E3、5.6E-4是标准化指数形式。对于不符合标准化条件的实数,可以通过增大或减小指数部分的值使其转变为标准化指数形式。例如实数0.0001234的标准化指数形式是1.234E-5。三、FORTRAN常量3、复型常量复型常量是采用圆括号将两个以逗号分割的实数或整数括起来表示的。其中第一个实数或整数表示复数中的实部,第二个实数或整数表示复数中的虚部。(实数1,实数2)实数1+实数2i(1.25,0.4)1.25+0.4i(1E2,-3.4)100.0-3.4i(1.0_4,4.2_8)1.0_8+4.2_8i(1,4)1.0+4.0i转换原则是:遇整变实,向高看齐在Fortran语言中,复型常量的实部和虚部的数据类型被自动识别为实型。当复数实部和虚部的数据类型不一致,或它们的kind值不同时,编译系统会自动将其转换。三、FORTRAN常量4、字符常量字符型常量又叫字符串,它是用单引号或双引号括起来的字符序列。例如,“a”、“123”、“I‘mastudent.”、’China‘、我是中国人!字符型常量中的字符可以是计算机系统中允许使用的任何字符。在字符串内大小写字母均可使用,但它们是不同的字符。单引号和双引号只起定界作用,它们不是字符串的组成部分。字符串本身中含有单引号或双引号的处理:例如要将I′mastudent作为一个字符串来处理,为了区分′是字符串中的字符还是定界符,可采用两种方式表示:1.交替使用法,″I′mastudent″′Hesaid:Iamfeelingwell.′2.重复使用法,′I′′mastudent′Hesaid:I'mfeelingwell.字符串内字符的个数称为字符串的长度。长度为0的字符串称为空串。在字符串内部的空格是有效字符,并占有一个字符的位置。例如,′ABC′和′ABC′是两个不同的字符串。前者字符串的长度为3,后者为5。字符串中的一个西文字符占据一个字节的存储空间,一个汉字(含汉语标点符号)占据2个字节的存储空间,且按两个西文字符计算长度,如字符串‘中国’的长度是4。字符通常是以其ASCII代码的二进制存储在内存中的。Fortran90支持C字符串,所谓C字符串就是C语言中的字符串。C字符串中允许出现非打印字符(控制字符),如回车符、换行符、退格符等等。C字符串中使用特殊字符“\”后跟非打印字符的ASCII码或标志符来表示非打印字符。Fortran90中,如果一个字符串的后面紧接一个字符C,那么这个字符串就是C字符串。例如,'中国\N'C'CHINA'C.通过C字符串可表示任何可输出的字母字符、专用字符、图形字符和控制字符。一个字符常量需要写成多行源程序时,有一条特殊的规则:不仅每一续行都不能尾随注释,而且每一续行必须以续行标识符(&)作为开头,任何尾随&号之后或者前导&号之前的空格都不是字符常数的组成部分,&号本身不是常数的组成部分。其它的字符包括空格都是字符常数的有效组成部分。三、FORTRAN常量5、逻辑常量逻辑常量只有真和假两种值:.true..false.。需要注意的是:逻辑值两边的小数点“.”必须有;逻辑值中字母不区分大小写。三、FORTRAN常量6、符号常量符号常量是用一个标识符来代表一个常量。符号常量常用PARAMETER语句来定义。例如:PARAMETER(PI=3.1415926,g=9.81)该语句定义了两个符号常用PI和g,在该程序单位内,PI代表3.1415926,g代表9.81。parameter为特有的常量定义标识,要定义的项必须放在()内,如果有多项,每项之间要用逗号隔开。Parameter语句位置:位于所有可执行语句之前。符号常量的定名规则与定变量名相同。名字本身隐含类型,也遵循I-N规则。可以用类型说明语句定义符号常量的类型。例:INTEGERPPARAMETER(P=5)注意:先写类型说明语句,后写参数语句在一个参数语句中可以定义多个符号常量。注意,符号常量与变量有着本质的区别:PARAMETER语句是非执行语句,必须放在可执行语句的前面。在编译源程序时,编译程序将程序中的符号常量名全部替换成所对应的常量。变量对应于一个存储单元,程序执行时,可将表达式的值存放到变量所对应的存储单元中(即给变量赋值)或从变量所对应的存储单元中取出相应的值。所以,符号常量不能当变量使用。符号常量也可以在需要改变一个常量的值时做到“一改全改”。【例】符号常量的使用示例。parameter(g=9.80655)t=10v=g*tprint*,vEnd该语句定义了符号常量g,在该语句所在的程序单元内,g都代表9.80655,和常量一样进行运算。一、变量的概念第二

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

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

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

×
保存成功