fortran第3章2Fortran语言程序设计初步.ppt
《fortran第3章2Fortran语言程序设计初步.ppt》由会员分享,可在线阅读,更多相关《fortran第3章2Fortran语言程序设计初步.ppt(138页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、3.4FORTRAN字符集字符集3.5常量常量3.6变量变量3.7内部函数内部函数3.8算术表达式算术表达式3.9赋值语句赋值语句3.10简单的输出语句(表控输出)简单的输出语句(表控输出)3.11简单的输入语句(表控输入)简单的输入语句(表控输入)3.12PARAMETER语句语句(参数说明参数说明)3.13PROGRAM语句语句,END语句语句,STOP语句语句,PAUSE语句语句下一页上一页停止放映不是任何一种外文字母或数字符号都能被某一计算机语不是任何一种外文字母或数字符号都能被某一计算机语言接受。每一种计算机的高级语言分别规定了它允许使言接受。每一种计算机的高级语言分别规定了它允许使
2、用的字符。用的字符。FortranFortran允许使用的字符如下允许使用的字符如下:英文字母英文字母:A A B B C C D D E E F F G G H H I I J J K K L L M M N N O O P P Q Q R R S T U V W X Y Z S T U V W X Y Z 阿拉伯数字阿拉伯数字:0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 特殊符号特殊符号:空格:空格=+-*/(),.:!%&;$!%&;$?_(F90?_(F90中新增的字符中新增的字符)3.4FORTRAN字符集字符集下一页上一页停止放映文字字符英文字母
3、ABCDEFGHIJKLMNOPQRSTUVWXYZ数字0123456789下划线_特殊字符图形名称图形名称空格:冒号等号!叹号十加号”引号一减号百分号*星号英语的and斜线;分号(左括号小于)右活号大于,逗号?问号小数点或句号货币符号撇号表表3-13-1基本的基本的FORTRAN 90/95FORTRAN 90/95字符集字符集 基本字符分为两大类:文字字符和特殊字符。除了货币符号基本字符分为两大类:文字字符和特殊字符。除了货币符号可以本地化之外,其他任何字符都必须依照表里的形式。可以本地化之外,其他任何字符都必须依照表里的形式。下一页上一页停止放映注意注意:一一.文字字符的用处文字字符的用
4、处主主要要是是命命名名的的作作用用,可可以以用用来来命命名名语语言言中中的的一一切切对对象,这三种符号可以混合使用;象,这三种符号可以混合使用;其中数字还具有它本来的含义,就是表示数目。其中数字还具有它本来的含义,就是表示数目。二二.特殊字符的用处特殊字符的用处特特殊殊字字符符主主要要具具有有功功能能的的意意义义,如如编编辑辑功功能能,运运算算功功能能,语法功能等。语法功能等。FORTRAN FORTRAN 90/9590/95标标准准原原则则上上接接受受小小写写字字母母。因因此此除除了了以以下下位位置,大小写是等价的。置,大小写是等价的。三三.大小写必须区分的位置大小写必须区分的位置 作为字
5、符常量的字符串里面;作为字符常量的字符串里面;输入输出的纪录里面;输入输出的纪录里面;作为编辑描述符的引号或撇号里面。作为编辑描述符的引号或撇号里面。下一页上一页停止放映四四.CVF编译平台接受小写字母。编译平台接受小写字母。在在OPENOPEN或或者者INQUIREINQUIRE语语句句里里面面的的FILE=FILE=或或NAME=NAME=后后面面是是否否区分大小写,也是由编译平台指定的。区分大小写,也是由编译平台指定的。五五.如如果果是是需需要要调调用用其其他他语语言言写写的的子子程程序序,而而恰恰好好该该种种语语言言(例如例如C C语言语言)是区分大小写的,这时就需要特别小心。是区分大
6、小写的,这时就需要特别小心。【例例3_13_1】如如果果用用C C写写了了两两个个子子程程序序EIGENEIGEN和和eigeneigen,然然后后有有如如下下的的FROTRANFROTRAN片断:片断:EXTERNAL EIGEN EXTERNAL EIGEN .CALL EIGEN CALL EIGEN .END END这时它是该引用这时它是该引用EIGENEIGEN还是还是eigeneigen呢?如果所使用的呢?如果所使用的FROTRANFROTRAN系统正好是怪异的那种,没问题。如果是常见的系统正好是怪异的那种,没问题。如果是常见的如如CVFCVF,这时它就无法区分,这时它就无法区分E
7、IGENEIGEN和和eigeneigen,这样就必须给,这样就必须给它们更换名称了。它们更换名称了。下一页上一页停止放映六六.数字的涵义:数字的涵义:除了以下情形,数字总是表示十进位数字除了以下情形,数字总是表示十进位数字属于二进制,八进制,十六进制的字面常量;属于二进制,八进制,十六进制的字面常量;带有带有B,O,Z编辑描述符的输入输出纪录。编辑描述符的输入输出纪录。【例【例3_23_2】以下语句当中的数字不是属于十进位数字:以下语句当中的数字不是属于十进位数字:DATA I,J,K/O1001,23.54,Z5CA2/DATA I,J,K/O1001,23.54,Z5CA2/其中第一个为
8、八进制数,第二个为十进制数,第三个为十六进制数。其中第一个为八进制数,第二个为十进制数,第三个为十六进制数。下一页上一页停止放映七七.下划线的涵义:下划线的涵义:下下划划线线的的主主要要作作用用就就是是置置于于单单词词之之间间代代替替空空格格,使得我们在命名时使用清楚的英语词汇。使得我们在命名时使用清楚的英语词汇。下下划划线线不不能能置置于于任任意意名名称称的的前前面面,但但是是可可以以置置于于名称的最后。名称的最后。下下划划线线也也用用于于在在字字面面常常量量中中区区隔隔常常量量的的值值和和种种别别参数。参数。无无论论给给什什么么对对象象起起名名,都都尽尽量量使使用用完完整整的的英英语语单单
9、词词,同同时时使使用用下下划划线线以以区区隔隔不不同同的的单单词词。所所谓谓好好记记性性不不如如烂烂笔笔头头,只只有有这这样样才才能能切切实实保保证证你你在在任任何何时时候候,在在程程序代码的任意位置都知道任意变量等的含义。序代码的任意位置都知道任意变量等的含义。下一页上一页停止放映与平台有关的与平台有关的FORTRAN辅助字符集辅助字符集基基本本字字符符集集是是在在一一切切FROTRAN的的编编译译平平台台都都可可以以使使用用的的,被被FORTRAN95标标准准规规定定为为必必须须使使用用的的默默认认字字符符集集。另另外还有些辅助的字符则是不同的平台有不同的用法约定。外还有些辅助的字符则是不
10、同的平台有不同的用法约定。辅助字符分两类:可打印字符和不可打印字符。辅助字符分两类:可打印字符和不可打印字符。可打印字符;可打印字符;各各种种本本地地化化语语言言的的字字符符,象象汉汉字字,希希腊腊字字母母等等,都都可可以以应应用在字符串,注释,和输入输出纪录当中。用在字符串,注释,和输入输出纪录当中。下一页上一页停止放映不可打印字符。不可打印字符。主要就是控制字符,例如制表符主要就是控制字符,例如制表符Tab键。键。制制表表符符(Tab键键)对对于于一一个个FORTRAN77FORTRAN77标标准准的的编编译译系系统统来来说说,在在固固定定源源程程序序形形式式里里的的Tab被被看看成成是是
11、至至少少6个个空空格格,而而在在自自由由源源程程序序形形式式里里的的Tab被被看看成成1个个空空格格。这这样样如如果果Tab被被放放在在文文本本当当中中用用于于输输出出格格式式控控制制,那那么么这这种种默默认认的的转转换换方方式式,有有时时就就会会导导致致输输出出格格式式的的混混乱。乱。有关有关FORTRAN 95FORTRAN 95的辅助字符集的使用规则,请参考具的辅助字符集的使用规则,请参考具体的编译系统的说明。体的编译系统的说明。下一页上一页停止放映所所谓谓FORTRAN的的词词汇汇就就是是一一个个语语句句的的最最小小的的意意义义单单位位,它它由由一一个个或或多多个个FORTRAN字字符
12、符集集里里的的字字符符组组成成。包包括括两两类类共共6种,分类例举如下:种,分类例举如下:3.5 3.5 词汇词汇由文字字符组成的词汇,包括由文字字符组成的词汇,包括4种:种:语句关键词语句关键词名称名称由单个词汇组成的字面常量由单个词汇组成的字面常量标识符标识符由特殊字符组成由特殊字符组成算符算符:+,.OR.定界符:逗号,定界符:逗号,=,=,:,:,:,;,;,%。下一页上一页停止放映1.1.语句关键词语句关键词标志语句本身标志语句本身【例【例3-3】下面的】下面的DO语句中的关键词语句中的关键词DO本身标志了该语句本身标志了该语句DOI=1,500标志选项。标志选项。【例【例3-4】下
13、面的】下面的INTENT语句当中的语句当中的IN,OUT,或或INOUT。INTENT(IN),A。BINTENT(INOUT),X,Y,Z用在语句当中,起分界的作用。用在语句当中,起分界的作用。【例【例3-5】如下面如下面DO语句当中的语句当中的WHILEDOWHILE(.NOT.VECTOR)并非所有的语句都必须包含关键词,在并非所有的语句都必须包含关键词,在FORTRAN里面,赋里面,赋值语句和函数都不需要关键词。值语句和函数都不需要关键词。下一页上一页停止放映在在一一个个程程序序当当中中,任任何何对对象象都都需需要要有有一一个个名名称称,给给它它们们命命名名所所得得到到的的词词汇汇,可
14、可以以说说就就是是一一般般语语言言里里的的名名词词,这这样样的的对对象象包包括括:变变量量,命命名名常常量量,程程序序单单元元,过过程程,公公用块,构造,派生类型,哑元等。用块,构造,派生类型,哑元等。2.2.名称名称名称的拼写规则为:名称的拼写规则为:名称必须由字母开头,可以由文字字符混合组成,而下名称必须由字母开头,可以由文字字符混合组成,而下划线不能作为名称的第一个字符。划线不能作为名称的第一个字符。一个名称至多允许含有一个名称至多允许含有31个字符。个字符。下一页上一页停止放映一个常量就是对一个值的合乎语法的字符标记。一个常量就是对一个值的合乎语法的字符标记。常量分为字面常量和命名常量
15、两种:常量分为字面常量和命名常量两种:一一个个值值如如果果没没有有在在程程序序里里面面经经过过命命名名,则则称称为为字字面面常常量,这种常量不能取派生数据类型。量,这种常量不能取派生数据类型。【例【例4-6】66953Z5120A2.3417.TRUE.(33.2,5.0)3.3.常量常量下一页上一页停止放映一一个个值值如如果果在在程程序序里里面面经经过过命命名名,则则称称为为命命名名常常量量,这这种常量能取派生数据类型。种常量能取派生数据类型。【例【例3-73-7】在如下声明语句当中的常量在如下声明语句当中的常量UNSTABLE_POINTUNSTABLE_POINT为命名常为命名常量:量:
16、PARAMETER (UNSTABLE_POINT=5.332)PARAMETER (UNSTABLE_POINT=5.332)对于常量的语义,将在说明数据时进一步讨论。对于常量的语义,将在说明数据时进一步讨论。下一页上一页停止放映在在一一个个程程序序单单元元内内部部,对对任任何何一一条条语语句句,都都可可以以在在该该语语句句的的前前面面加加上上语语句句标标签签,以以便便在在该该程程序序单单元元内内部部的的任任何何其其他他位位置置引引用用该该语语句句。需需要要引引用用其其他他语语句句的的语语句句包包括括CALL语语句,句,DO结构,分支语句,输入输出语句等。结构,分支语句,输入输出语句等。4.
17、4.语句标签语句标签语句标签的书写规则为:语句标签的书写规则为:语句标签由语句标签由1到到5个十进制数字组成,其中必须至少有一个十进制数字组成,其中必须至少有一个数字不能是个数字不能是0,例如,例如000不能作为标识符;不能作为标识符;标识符以标识符以0开头是没有任何意义的,例如开头是没有任何意义的,例如0034与与34没有没有区别。区别。标识符不能放置于空语句之前。标识符不能放置于空语句之前。下一页上一页停止放映算符用在表达式当中,通过运算而获得某种类型的值。算符用在表达式当中,通过运算而获得某种类型的值。算符分为固有算符和自定义算符两类:算符分为固有算符和自定义算符两类:固有算符固有算符在
18、在FORTRAN95语语法法当当中中,R310规规定定了了固固有有算算符符的的构构成成法则。法则。【例【例4-9】/表示字符串的连接表示字符串的连接+表示对数值的加法表示对数值的加法.NOT.表示逻辑否表示逻辑否.OR.表示逻辑或表示逻辑或5.5.算符算符下一页上一页停止放映6.6.定界符定界符全部的定界符有如下全部的定界符有如下12种形式:种形式:/()(/),=:;%其中其中(和和),(/和和/)都必须成对出现都必须成对出现顾顾名名思思义义,这这些些定定界界符符的的功功能能就就是是在在一一个个连连续续的的源源码码文文本本当当中中,用用来来把把不不同同性性质质的的源源码码成成分分区区分分开开
19、。它它们们的的具具体含义将在具体的语句当中说明。体含义将在具体的语句当中说明。下一页上一页停止放映数数据据表表示示的的实实现现具具有有一一个个重重要要的的参参数数,即即存存储储空空间间,所所以以当当问问题题要要求求的的数数据据,不不能能满满足足于于默默认认的的存存储储空空间间的的时时候候,这这时时,就就需需要要进进一一步步给给出出数数据据的的种种别别参参数数,这是更加详细的数据描述。这是更加详细的数据描述。如如果果在在真真实实世世界界问问题题当当中中出出现现的的的的数数据据对对象象,不不符符合合已已有有的的固固有有数数据据类类型型以以及及数数组组的的定定义义,这这时时就就需需要要根根据据用用户
20、户的的要要求求构构造造一一个个依依赖赖于于问问题题的的特特定定的的数数据据结结构,这就是构,这就是数据描述时会遇到的三种情况数据描述时会遇到的三种情况。对于这三种情况,对于这三种情况,FORTRANFORTRAN的解决方式如下:的解决方式如下:数据的性质数据的性质 (数据的类型以及其他属性)数据的类型以及其他属性)3.6 3.6 常量与变量常量与变量下一页上一页停止放映第一种情况:第一种情况:确定(固有)数据的类型以及相应的可能具有的属性。确定(固有)数据的类型以及相应的可能具有的属性。FORTRAN FORTRAN所能辨识的数据类型首先分为两大类:所能辨识的数据类型首先分为两大类:固有数据类
21、型固有数据类型 派生数据类型派生数据类型 所所谓谓固固有有类类型型,是是FORTRANFORTRAN语语言言所所定定义义的的最最基基本本的的数数据据类类型型,每每一一种种固固有有类类型型是是和和该该种种数数据据类类型型相相应应的的各各种种运运算算一一起起隐隐式式定定义义的的,也也就就是是说说一一旦旦声声明明引引入入某某种种固固有有数数据据类类型型,则则系系统统总总是是默默认认为为对对它它进进行行相相应应的的运运算算是是合合法法的的,并并且总是可访问的。且总是可访问的。固有类型包括五种:固有类型包括五种:整型整型(INTEGER)、实型、实型(REAL)、复型、复型(COMPLEX)、逻辑型、逻
22、辑型(LOGICAL)和字符型和字符型(CHARACTER)。下一页上一页停止放映所所谓谓派派生生类类型型是是由由用用户户定定义义的的,非非隐隐式式定定义义的的类类型型,只只要要用用一一个个类类型型定定义义来来声声明明其其成成员员是是何何种种固固有有类类型型,或或者者是是何何种种其其它它已已经经定定义义过过的的派派生生类类型型,就就能能够够被被FORTRANFORTRAN认可为一种数据类型。认可为一种数据类型。由于派生数据类型正是由固有数据类型充当成员由于派生数据类型正是由固有数据类型充当成员而构成的,因此在结构关系上,可以把固有数据类型而构成的,因此在结构关系上,可以把固有数据类型看成原子,
23、而把派生数据类型看成分子。看成原子,而把派生数据类型看成分子。派生类型数据最重要的用途就是扩充了数组这种派生类型数据最重要的用途就是扩充了数组这种重要的数据结构。重要的数据结构。下一页上一页停止放映每一种固有数据类型的存储模式每一种固有数据类型的存储模式:在在FORTRAN77FORTRAN77中:中:整整型型,实实型型,逻逻辑辑型型数数据据都都是是使使用用了了一一个个数数值值存存储储单单元元,复复型型和和双双精精度度数数据据则则使使用用了了两两个个数数值值存存储储单单元元,字符型数据使用字符型数据使用一个字符存储单元一个字符存储单元。在在FORTRAN90FORTRAN90与与9595中:中
24、:默默认认在在FORTRAN77FORTRAN77中中的的规规定定,在在FORTRAN90FORTRAN90之之后后的的标标准准里里,开开始始允允许许在在一一个个程程序序单单元元内内,由由用用户户定定义义特特定定的的不不依依赖赖于于固有数据存储模式的数据类型,这就是派生数据类型。固有数据存储模式的数据类型,这就是派生数据类型。下一页上一页停止放映第二种情况:第二种情况:指定固有数据类型的种别参数。指定固有数据类型的种别参数。用用来来指指定定程程序序当当中中需需要要使使用用的的每每一一种种固固有有数数据据类类型型所所要要求求占占据据的的内内存存空空间间大大小小的的属属性性由由种种别别参参数数表表
25、示示。给给这这个个变变量量(参参数数)指指定定一一个个数数值值,就就可可以以说说明明数数据据所所需需要要的的存存储储空空间间的的大大小小,也也就就是是程程序序允允许许的的数数值值数数据据的的位位数数和和字字符符串串的字符数目。的字符数目。KINDKIND(种种类类种种别别参参数数)分分别别说说明明整整数数类类型型的的十十进进制制指指数数范范围围,实实数数类类型型和和复复数数类类型型的的十十进进制制精精度度和和指指数数范范围围,字符类型和逻辑类型的表示方法。字符类型和逻辑类型的表示方法。LENLEN(长度种别参数长度种别参数)对字符类型规定了字符的个数。对字符类型规定了字符的个数。【例】【例】R
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- fortran 语言程序设计 初步
限制150内