fortran Quiz(fortran测试题)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

16、求出1900~2100的闰年,要求把求出的闰年 (“四年一润,百年不润,四百年再润”)存入数 组Y,并统计闰年的数目。以7位宽度输出闰年年号, 每行10个。
INTEGER::Y(50), K=0 DO I=1900,2100 IF(MOD(I,400)==0 .OR. MOD(I,100)/=0 K= ) Y(K) = I ENDIF ENDDO WRITE(*, '(1X,I2 “ LEAP YEARS”)')K WRITE (*, ‘( )') (Y(I),I=1,K) END
7、设A=.TRUE., B=.FALSE., C=.FALSE., 逻辑表达式 (A.OR.B).AND.C与A.OR..NOT.B 的值是( )。 A.TF B. FT C. TT D. FF 8、阅读下列FORTRAN程序, 程序运行时执行循环体的次数是 ( )。 X=0 A 0 B 1 DO L=10, 5, 1 C 6 D 无穷 X=X+1.0 ENDDO END 9、圆心在原点的两个同心圆,半径分别为2和4。描述点(X,Y) 在小圆外,大圆内(包括在两圆周上)的表达式是( ) A ABS(X)<=4.0 .AND. ABS(Y)>=2.0 B 2.0=<SQRT(X*X+Y*Y)<=4.0 C X*X+Y*Y<=16.0 .AND. X*X+Y*Y>=4.0 D (X .OR. Y)>=2.0 .AND. (X .OR. Y)<=4.0
填空
INTEGER A(4,4) DO I=1,4
14、右侧程序运行结 果是( )
DO J=1,4 A(I,J)=I*J-1 ENDDO ENDDO DO I=1,4 N=5-I WRITE(*,30)(A(I,J),J=N,4) ENDDO 30 FORMAT(1X,4I3) END
15、右侧程序运行 结果是()
2 2 + x y 3 11、数学表达式 x ln( ) x 的FORTRAN表达式Fra Baidu bibliotek( ) 12、数组声明语句为: INTEGER, DIMENSION(-5:-1,-3:3,11:15) :: num 数组元素num(-2,1,13)是存储结构中第( )个元素。 13、下列程序运行结果是( ) 。 INTEGER M(3,3) DATA M/1,2,3,4,5,6,7,8,9/ WRITE(*,10)(M(3,J),J=1,3) 10 FORMAT(3I2) END
QUIZ
分数: 100分 时间: 80分
一、选择
1、在下列写法中,( )不是FORTRAN常量。 A .TRUE. B 1E-2 C (0.0,2.4) D 1,000,000 2、下列哪个是合法的F90变量名?( ) A FORTRAN/90 B FORTRAN_90 C 90_FORTRAN D .FORTRAN 3、以下声明中,不是数组声明的是:( ) A. integer a(4) B. integer (4) a C. integer a(10,20) D. integer a(-3:10)
4、以下语句中,不正确的是:( ) A write(*, ‘(1x,f6.2)’) 6.3 B integer, parameter :: pi=3.14159 C tax=salary*3% D integer, dimension(2,3) :: a 5、FORTRAN表达式"6/5+9/2**3/2"的值为( ) A 33 B 1 C 5 D 3 6、以下为数组声明语句,则下列选项中不正确的是( ) INTEGER num(9)=(/1,2,3,4,5,6,7,8,9/), mm(5) A mm=num(5:9) B mm=num(5:) C mm=num(:5) D mm=num(:)
MOD(I,4)==0) THEN
编程
17、求100到999之间所有三位同构数,并将 它们输出。所谓三位同构数就是该数出现在 其平方的末三位,如3762=141376,则376即 为三位同构数。
10、自定义数组stl的定义如下: TYPE student INTEGER::num CHARACTER(len=8)::name . REAL::height ENDTYPE TYPE(student),DIMENSION(10)::stl 则数组stl在常用的编译系统(如CVF)中占据内存单元字节 数是( )。 A.140 B.160 C.180 D.200
PROGRAM example INTEGER,DIMENSION(1:4) :: a=20, b=15 LOGICAL,DIMENSION(1:4) :: log=.FALSE. INTEGER:: reduce=8,increse=2 a(1:4:2)=25 b(2:4:2)=10 WHERE(a>20)a=a-reduce WHERE(b<15) b=b+increse a=a-5 ELSEWHERE log=.TRUE. END WHERE WRITE(*,'(1X,4I6)')a WRITE(*,'(1X,4I6)')b WRITE(*,'(1X,4L6)') log END PROGRAM example
相关文档
最新文档