计算机技术基础Fortran试题库

  • 格式:doc
  • 大小:63.00 KB
  • 文档页数:20

.

-

. -可修编- . 一、选择题

1、 下列关于"SUBROUTINE MAP(X,Y)"语句行的叙述中,不正确的是( )

A) 这是子程序的第一个语句 B) 字符串"MAP"是子程序名

C) 变量X是子程序的形参 D) 子程序执行后,MAP将返回整型数据

2、FORTRAN表达式"2/4+0.5"的值是( )

A) 0.5 B)1 C)1.0 D) 0

3、 阅读下列FORTRAN程序:

PI=3.14159265

WRITE(*,'(F7.4) ')PI

END

程序运行后输出结果是( )

A) 3.142 B) 3.1415 C) 0.31416 D) 3.1416

4、 圆的直径存放在整型变量K之中,下列计算圆面积的表达式中正确的是( )

A) 3.1415926*K*K/4 B) 3.1415926*(K*K/4)

C) 3.1415926*(K/2)**2 D) 3.1415926*(K/2)*(K/2)

5、 要判断"月收入M在2000元以上(含2000元)且5000元以下)不含5000元)"的职工,应该使用的逻辑表达式是( )

A) M .GE. 2000 .AND. M .LE. 5000 B) M .GE. 2000 .OR. M .LE. 5000

C) M .GE. 2000 .AND. M .LT. 5000 D) M .GE. 2000 .OR. M .LT. 5000

6、 设FORTRAN子程序如下:

SUBROUTINE SUB(I,X)

B=I+1

X=X+B

END

若主程序中的变量M,B已按I-N规则赋值,则调用上述子程序的语句中正确的是( )

A) CALL SUB(M,M) B) CALL SUB(M+4,B)

C) CALL SUB(B,B) D) CALL SUB(M,B+4)

7、 下列不是FORTRAN常量的是( )

A) (3.0,4.0) B) 3.1416D+00C) 2/3 D) 'Very good!'

8、 阅读下列FORTRAN程序:

F=1.0 .

-

. -可修编- . DO 20 K=3, 7, 3

DO 20 L=K-1, K

20 WRTTE(*,'(I3, F8.1)'K, F*K

END 程序运行结果的最后一行是( )

A) 3 6.0B) 6 6.0 C) 6 180.0 D) 7 180.0

9、 在FORTRAN中,下列运算符的优先顺序是( )

A) 逻辑运算,关系运算,算术运算 B) 关系运算,逻辑运算,算术运算

C) 算术运算,关系运算,逻辑运算 D) 关系运算,算术运算,逻辑运算

10、 使用FORTRAN部函数时,所给的自变量( )

A) 只能是常量 B) 只能是变量

C) 只能是常量或者变量 D) 可以是常量、变量或者表达式

11、 设X=2.0, Y=8.0, Z=6.0, L=.TRUE.,则下列FORTRAN表达式中值为.TRUE.的是( )

A) X+Z.GT.Y.AND.L B) .NOT.(Y.LT.Z+X).NEQV..NOT.L

C) .NOT.L.OR.(L.EQV.Y+X.EQ.Z) D) Y+X.GE.Z+X.AND.(L.AND..FALSE.)

12、 下列输出语句行中正确的是( )

A) WRITE(*,*)(A(K,L),K=1,3,L=1,3)

B) WRITE(*,*)A(K,L),K=1,3,L=1,3

C) WRITE(*,*)((A(K,L),K=1,3),L=1,3)

D) WRITE(*,*)(A(K,L),K=1,3),L=1,3

13、 给定下列FORTRAN子程序如下:

SUBROUTINE SUB(K,A)

A=SQRT(K*K+1.0)

END

下列调用语句中正确的是( )

A) CALL SUB(N,N) B) CALL SUB(X,X)

C) CALL SUB(N,X*X) D) CALL SUB(11,X)

14、 阅读下列FORTRAN程序:

INTEGER AA(2,3)

DATA AA/1,2,3,4,5,6/

CALL S2D19(AA)

CALL S2D19(AA(1,2))

END

SUBROUTINE S2D19(BB) .

-

. -可修编- . INTEGER BB(2,2)

WRITE(*,'(1X,2I3)') BB(1,1),BB(2,2)

END

程序运行结果是( )

A) 1 4 B) 15 C) 1 4 D) 1 2

3 6 2 6 2 5 3 4

15、 阅读下列FORTRAN程序:

INTEGER A(3,3)

DO 10 K=1,3

DO 10 L=1,3

10 A(K,L)=K*10+L

WRITE(*,'(1X,3I3)')A

END

程序运行结果是: ( )

A) 11 21 31 B) 11 12 13 C) 31 32 33 D) 33 32 31

12 22 32 21 22 23 21 22 23 32 22 21

13 23 33 31 32 33 11 12 13 31 21 11

16、 阅读下列FORTRAN程序:

WRITE(*,10)'YEAR:', 1996

10 FORMAT(/3X,A,I4)

END

程序运行结果是(^代表空格,下同) ( )

A) ^^^^^YEAR:1996 B) ^^YEAR:1996

C) 空白行 D) 空白行

^^^^^YEAR:1996 ^^YEAR:1996

17、某函数子程序中使用了IMPLICIT、READ、PLEX和FUNCTION四种语句,其中属于可执行语句的是: ( )

A)FUNCTION B) READ C) PLEX D) IMPLICIT

18、 阅读下列FORTRAN程序:

DIMENSION M(4,4)

DATA M/1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6/

DO 10 I=1,4

WRITE (*,100)(M(I,J),J=1,I)

10 CONTINUE

100 FORMAT(1X,4I2) .

-

. -可修编- . END 程序运行的结果是( )

A) 1 2 3 4 B) 1 5 9 3 C) 1D) 1

6 7 8 6 0 4 2 6 2 6 6

1 2 1 5 3 7 1 9 3 7 11

6 6 4 8 2 6 3 4 4 8 2 66

19、 阅读下列FORTRAN程序:

CHARACTER*10 A, B*6

DO 10 I=1,10

A(I:I)=' '

10 COUNTINUE

A(1:5)='ABCDE'

B='FGHIJK'

A(4:9)=B

WRITE(*,100) A

100 FORMAT(1X,A)

END 程序运行结果是:( )A) ABCDEFGHIJ B) ABCDEGHIJK C) ABCFGHIJK D) BCDEFGHIJK

20、 阅读下列FORTRAN程序:

INTRINSIC SIN, COS

WRITE(*,*)FUN(SIN,30.0)/FUN(COS,30.0)

END

FUNCTION FUN(F,X)

X=X*3.14159/180

FUN=F(X)

END 程序运行结果是 ( )

A) sin30°的值 B) cos30°的值 C) tg30°的值 D) ctg30°的值

二、填空题

1、下列FORTRAN子程序的功能是用以下公式计算一组数据Z1,Z2,…,Zn的标准差σ:

σ2=(Z12 +Z22+…+Zn2)/n-[(Z1+Z2+…+Zn)/n]2

请在程序中的下划线处填入合适的容。

【1】 SIGMA(Z,N)

REAL Z(N)

SUMX=0.0

SUMX2=0.0

DO 10 K=1,N .

-

. -可修编- . 【2】

SUMX=SUMX+X

SUMX2=SUMX2+X*X

10 CONTINUE

AV=SUMX/N

AV2=SUMX2/N

S2=AV2-AV*AV

SIGMA=【3】

END

2、 下列FORTRAN程序的功能是将30个学生的考试成绩读入数组A,然后统计并且输出最高的分数以及小于60分、60~80分与大于80分的三个分数段的学生数。请在程序中的下划线处填入合适的容。

【4】 A(30), B, C(3)

DATA C/3*0/

READ(*,*)A

【5】

DO 10 K=2,30

IF(A(K).GT.B) B=A(K)

10 CONTINUE

DO 30 K=1,30

IF (A(K).LT.60)C(1)=C(1)+1

IF (A(K).GT.80)C(3)=C(3)+1

IF(A(K).LE.80 【6】 A(K).GE.60)C(2)=C(2)+1

30 CONTINUE

WRITE(*,*) B,C

END