FORTRAN知识要点及笔试试卷分析_第1页
FORTRAN知识要点及笔试试卷分析_第2页
FORTRAN知识要点及笔试试卷分析_第3页
FORTRAN知识要点及笔试试卷分析_第4页
FORTRAN知识要点及笔试试卷分析_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、FORTRAN 知识要点1编辑课件第2章FORTRAN90基础知识:程序单元的概念、语言元素、数据类型、变量名的命名规则第3章基本语句:类型说明语句、种别、p38页属性表、算术表达式、P40页函数表、输入输出(表控格式、有格式I,F)2编辑课件第4章选择结构程序设计:关系与逻辑表达式(关系运算符=与/=)(逻辑运算符P61)、混合运算符的优先级别(P62表4-2)、IF语句与IF结构的区别、CASE结构3编辑课件第5章循环结构程序设计:三种循环结构:不带循环变量的DO、带循环变量的DO、DO While结构、隐DO循环、P80页EXIT和CYCLE语句4编辑课件第6章程序单元和过程:函数子程序

2、、子例子程序、接口块(P116必须使用接口块的情况)、虚实结合、虚过程、模块、递归、P136页其他部分(内部过程、类属过程、超载运算符、自定义运算符、超载赋值号) P142:进行超载赋值运算时,必须编写子例子程序形式;要实现超载运算符功能时,必须编成函数子程序形式。5编辑课件第7章数组:数组的基本概念(P154数组片段与数组构成器)、二维数组按列存放、数组函数、P165 RESHAPE函数、数组形式(常、可调、假定形状、动态、假定大小)、数组做变元、P191页数组运算6编辑课件第8章字符型数据:字符常量、变量、子串、表达式、P208页字符函数第9章派生类型和指针:派生类型、指针(P229页注意

3、问题)第10章数据文件:文件P260页各参数的含义、文件的操作(上机)7编辑课件2010秋二级FORTRAN 笔试试卷选择题(10分)8编辑课件21、 FORTRAN90标准规定有五个逻辑运算符,以下不属于规定但可以自定义的逻辑运算符是 21 。 .NOT. .EQV. .XOR. .NEQV.9编辑课件22、语句CHARACTER(len=15):str说明str是长度为15的字符变量,下述赋值语句中正确的是 22 。 A. str=abcd+26 B. str=I am a / student C. str=2*3+61 D. str=AB 10编辑课件23、若有说明语句REAL(4):x

4、=123.4567,则下述表达式能将x的值舍入成123.46的是 23 。 A.(x*100.0+0.5)/100.0 B. (x/100.0+0.5)*100.0 C. (x+0.5)/100.0)*100.0 D. INT(x*100.0+0.5)/100.011编辑课件24、有程序片断: INTEGER:a(2,2),b(5)a=RESHAPE(/2,4,6,8/),(/2,2/)b=(/RESHAPE(a,(/4/),9/) 那么数组b的内容是 24 。 A. 2 4 6 8 9 B. 2 2 2 9C. 4 4 6 8 9 D. 4 4 4 4 9A数组的值:2 6 4 812编辑课

5、件25、关于动态数组(假定数组名为a)的以下说法中,错误的是 25 。 A.要说明标识符a为动态数组,必须在数组说明中标明ALLOCATABLE属性B.动态数组既可以作过程的哑元,也可以在调用过程时作实元C.动态数组a用执行ALLOCATE(a(10)语句获得内存空间D.动态数组a用执行DEALLOCATE(a)语句释放已占内存空间13编辑课件26、含有目标变量和指针变量的程序片断如下: INTEGER, POINTER:p1,p2INTEGER, TARGET:x=10p1=x以下赋值语句中错误的是 26 。 x=2*p1+1 p1=2*x+1 p2=2*p1+1 p1=2*p1+114编辑

6、课件27、FORTRAN90提供的内部函数其名称分为通用名(即类属名)和专用名。以下说法中错误的是 27 。 通用名无须考虑其函数值的类型,它决定于变元的类型,使用方便 专用名必须让函数值的类型,和它的变元的类型相一致,否则出错 在进行过程哑、实结合时只能用专用名,并用INTRINSIC属性加以说明在进行过程哑、实结合时只能用通用名,并用INTRINSIC属性加以说明15编辑课件28、函数或子程序辅程序的哑元是数组,调用时实行数组哑、实结合。以下说法中错误的是 28 。 A实元(实参)可以是同类型的数组名或数组元素名B实元数组与哑元(形参)数组必须有相同的维数C实元数组(从结合点开始)的长度不

7、能小于哑元数组长度D若实元为数组名则从该数组的首元素开始,否则从该数组元素名指定的元素开始哑、实结合16编辑课件29、以下关于内部函数过程说法中正确的是 29 。内部函数过程可以放在程序单位中的任何地方内部函数过程必须通过执行它的END FUNCTION语句才能完成引用内部函数过程不能递归定义内部函数过程可以作为函数引用而出现在该程序单位内任何表达式内 17编辑课件30、以下关于FORTRAN文件系统中操作的叙述中,错误的是30 。A. 执行BACKSPACE(UNIT=2,IOSTAT=i)操作,从文件的当前位置退至文件始端 B. 执行REWIND(UNIT=2,IOSTAT=i)操作,从文

8、件的当前位置退至文件始端C. 执行BACKSPACE(UNIT=2,IOSTAT=i)操作,从文件的当前位置后退一个记录D. 执行ENDFILE(UNIT=2,IOSTAT=i)操作,在文件的当前位置写上文件结束符18编辑课件1、各种运算符及其优先级2、数组的函数3、程序结构,内部函数问题4、派生类型问题、指针变量5、变量的数据类型6、哑元7、文件操作选择题注意:19编辑课件填空题(请将答案填写在答题纸的相应答题号内,每个答案只占一行)20编辑课件读程序写结果(15分) :1、数组元素的赋值(各种语句结构的嵌套、函数)2、递归程序的调用3、字符类型与字符子串的使用、字符函数4、派生类型的定义与

9、使用5、自定义运算符或运算符超载6、类属过程、模块、内部过程7、指针赋值8、数组函数、程序的功能保证正确的方法:逐语句运行、画图表!21编辑课件RECURSIVE FUNCTION f(a,b) RESULT(s) IMPLICIT NONE INTEGER:a,b,s IF(b=1) THEN s=a ELSE s=a+f(a,b-1) ENDIF PRINT*,a,b END FUNCTION f例1:填空题2、 以下程序执行后,输出的第一行是 ,主程序中函数f(x,y)的值是 。递归问题 PROGRAM main IMPLICIT NONE INTEGER:x,y,f x=5; y=3

10、PRINT*,f(x,y) END PROGRAM main5 11522编辑课件PROGRAM pointerIMPLICIT NONEINTEGER,POINTER:a,b,cINTEGER,TARGET:x,y,zx=33; y=55; z=88a=x; b=y; c=zPRINT(3I5),a,b,ca=b+c;b=c+a; c=a+bPRINT(3I5),a,b,c a=b; b=c; c=aPRINT(3I5),a,b,cEND PROGRAM pointer例2:填空题4、以下程序执行后,输出的第二行是 ,第三行是 。指针问题143 231 374231 374 23123编辑课

11、件PROGRAM main IMPLICIT NONE INTEGER:i,n,maxl(1),array(3,3) INTEGER, ALLOCATABLE : ar1(:) array=RESHAPE(/7,9,-1,-2,5,0,3,6,9/),(/3,3/) n=SIZE(SHAPE(array) PRINT (A,I2),n=,n ALLOCATE(ar1(n) ar1=MAXLOC(array,MASK=array .LT. 7) PRINT (4I3),(ar1(i),i=1,n) END PROGRAM main例3:填空题5、以下程序执行后,输出的第一行是 ,第二行是 。数组

12、函数n=22 3Array的值:7 -2 3 5 6-1 0 924编辑课件程序填空(15分):1、变量类型的说明、初值;2、条件表达式的构造;3、循环的出口语句;4、派生类型的定义;5、函数或子例子程序的调用,模块引用;5、表达式的书写;7、mod与整数相除的搭配使用。保证正确的方法:弄清每个变量的含义,逐语句对照算法的中文描述!25编辑课件FORTRAN 上机考试的得分点(1)改错题:20分源程序存在: 2分录入完毕: 2分结果文件存在: 2分结果正确: 2分改正错误: 4分3错=12分 (其中语法错1处,语义错2处)注意:结果文件MYF1.OUT文件。26编辑课件(2)编程题:20分源程

13、序存在: 2分数据文件存在: 1分数据文件正确: 2分结果文件存在: 2分结果文件正确: 2分主辅结构正确: 2分OPEN语句正确: 1分读/写语句正确: 1分循环语句正确: 1分调用子程序正确: 1分虚实结合: 2分算法正确: 3分 27编辑课件 二、编程题(20分) 【题目】函数f(x)的展开式如下:将f(x)展开式的右端编写成外部过程。当级数通项的绝对值小于eps(eps=10-10,即1E-10)时停止计算。在同一行上,x用F6.4格式输出,计算所得的f(x)和 用F8.6格式输出。计算所用的数据存放在文件MYF2.DAT中,从该文件输入的x值为:5.5887, 1.5708, 2.7

14、635, 3.2536, 3.8633, 4.3256, 4.4988 事实上 若通项记为Un,则28编辑课件【要求】1. 源程序必须存放在文件MYF2.F90中。 2. 建立数据文件MYF2.DAT,所需输入数据即从该文件中读出。 3. 程序运行结果存于文件MYF2.OUT中。 4. 数据文件的打开、使用、关闭均要求采用FORTRAN语言文件管理语句实现。【注意】本题完成后必须将MYF2.F90、MYF2.DAT、MYF2.OUT等文件拷贝到考试盘(盘符为T:)的根目录(不要自己创建文件夹)下供阅卷用。 29编辑课件PROGRAM MainIMPLICIT NONEREAL:x,f,y,zINTEGER:icharacter(len=50):fmtfmt=(x=,F6.4, f(x)=,F8.6, g(x)=,F8.6)OPEN(1,FILE=myf2.dat)OPEN(2,FILE=myf2.out)DO i=1,7 READ(1,*)x y=f(x) z=1.0/SQRT(1+x*2) WRITE(2,fmt)x,y,z; WRITE(*,fmt)x,y,zENDDOEND PROGRAM Main30编辑课件FUNCTION

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论