📄 2001年9月二级笔试试题fortran.txt
字号:
全国计算机等级考试二级笔试试卷
基础部分和FORTRAN语言程序设计
(考试时间:120分钟,满分100分)
2001年9月
一、选择题((1)-(40)题每题1分,(41)-(50)题每题2分,共60分)
下列各题A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。
(1) 在计算机系统中,一个字节的二进制位数为
A) 16 B) 8 C) 4 D) 由 CPU的型号决定
(2) 存储 16×16点阵的一个汉字信息,需要的字节数为
A) 32 B) 64 C) 128 D) 256
(3) 英文大写字母B的ASCII码为42H,英文小写字母b的ASCII码为
A) 43H B) 84H C) 74H D) 62H
(4) 下列计算机语言中,CPU能直接识别的是
A) 自然语言 B) 高级语言 C) 汇编语言 D)机器语言
(5) 在计算机领域中,所谓"裸机"是指
A) 单片机 B) 单板机
C) 不安装任何软件的计算机 D) 只安装操作系统的计算机
(6) 下列带有通配符的文件名中,能代表文件ABCDEF.DAT的是
A) A*.* B) ?F.* C) *.? D) AB?.*
(7) 下列DOS命令中,执行时不会发生错误的是
A) TYPE *.TXT B) DIR *.TXT
C) REN A.TXT A:b.TXT D) COPY *.TXT>CON
(8) 设当前盘为C盘,C盘的当前目录为\A\B\C。下列DOS 命令中能正确执行的是
A) MD \ B) MD A:\ C) MD \A\B D) CD C:
(9) 为了将C:USER中的文件FILE.TXT同名复制到A盘根目录下,下列DOS命令中能正确执行的是
A) TYPE C:\USER\FILE.TXT > A:\FILE.TXT
B) TYPE C:\USER\FILE.TXT A:\FILE.TXT
C) COPY C:\USER\FILE.TXT > A:\FILE.TXT
D) COPY C:\USER\FILE.TXT
(10) 在Windows下,当一个应用程序窗口被最小化后,该应用程序
A) 终止运行 B) 暂停运行 C) 继续在后台运行 D) 继续在前台运行
(11) 在Windows环境下,下列操作中与剪贴板无关的是
A) 剪切 B) 复制 C) 粘贴 D) 删除
(12) 在Windows环境下,实现窗口移动的操作是
A) 用鼠标拖动窗口中的标题栏 B) 用鼠标拖动窗口中的控制按钮
C) 用鼠标拖动窗口中的边框 D) 用鼠标拖动窗口中的任何部位
(13) 一台计算机连入计算机网络后,该计算机
A) 运行速度会加快 B) 可以共享网络中的资源
C) 内存容量变大 D) 运行精度会提高
(14) 不能作为计算机网络中传输介质的是
A) 微波 B) 光纤 C) 光盘 D) 双绞线
(15) 下列各项中,不属于多媒体硬件的是
A) 声卡 B) 光盘驱动器 C) 显示器 D) 多媒体制作工具
(16) 在下列FORTRAN77运算符中,优先级最高的是
A) .AND. B) .NOT. C) .OR. D) .EQ.
(17) 下列FORTRAN77表达式中,值为.TRUE.的是
A) .NOT..FALSE..AND..NOT..TRUE. B) .FALSE..OR..NOT..TRUE
C) .TRUE..AND..NOT..FALSE. D) X.GT.Y.AND.X.LE.Y
(18) FORTRAN77表达式"6/5+9/2**3/2"的值为
A) 33 B) 1 C) 5 D) 3
(19) 下列FORTRAN77 表达式中,合法的是
A) 0.0.LE.X.AND..NOT.X.GE.10.0 B) 0.0.GE.X.LT.10.0
C) 0.0.LE.X.GE.10. D) 10.0.LE.X.OR..AND.X.GT.0.0
(20) 阅读下列FORTRAN77程序:
M=0
N=100
DO 10 K=1,N
M=M+1
IF(M.GT.50) N=51
10 CONTINUE
WRITE(*,*) M
END
运行上述程序后,输出的M值为
A) 50 B) 51 C) 52 D) 100
(21) 阅读下列FORTRAN77程序:
READ(*,*) N
X=1.0
IF (N.GE.0) X=2*X
IF (N.GE.5) X=2*X+1.0
IF (N.GT.15) X=3*X.-1.0
WRITE(*,*) X
END
运行上述程序时,如果从键盘输入
15<回车>
则最后输出的X值为
A) 14.0 B) 2.0 C) 1.0 D) 5.0
(22) 阅读下列FORTRAN77程序:
M=0
DO 10 K=2, 100,3
IF (M.NE.20) M=M+1
10 CONTINUE
WRITE(*,*) M
END
运行上述程序后。输出的M的值为
A) 0 B) 20 C) 32 D) 33
(23) 阅读下列FORTRAN77 程序:
READ(*,100) M,N
K=M+N
WRITE(*,100) K
100 FORMAT(1X,2I3)
END
运行上述程序时,如果从键盘输入
123456789<回车>
则最后输出的结果为
A) 579 B) 79 C) 801 D) 01
(24) 阅读下列FORTRAN77程序:
READ(*,100) X,Y
Z=X+Y
WRITE(*,100) Z
100 FORMAT(1X,2F4.1)
END
运行上述程序时,如果从键盘输入
543219876<回车>
则最后输出的结果为
A) **** B) 1419.7 C) 141.9 D) 19.7
(25) 阅读下列FORTRAN77程序:
DIMENSION M(3,4)
DATA M/4*2,4*1,4*-1/
N=0
DO 10 K=1 ,4
10 N=N+M(1,K)
WRITE(*,*) N
END
运行上述程序后,输出的N的值为
A) 8 B) 5 C) 4 D) 3
(26) 阅读下列FORTRAN77程序:
N=0
DO 20 K=1,50
N=N+1
DO 10 J=1,50-K
N=N+1
20 CONTINUE
WRITE(*,*) N
END
运行上述程序后,输出的N的值为
A) 1275 B) 1225 C) 1375 D) 1325
(27) 下列FORTRAN77语句中,正确的是
A) READ(*,*) (N,A(K),K=1,N) B) WRITE(*,*) (M(K,J),K=1,10;J=1,10)
C) WRITE(*,*) (10,A(K),K=1,10) D) DATA A,B,C/2*0.0/
(28) 为了将以字母I,J,K开头的所有变量定义为双精度实型,下列说明语句中正确的是
A) IMPLICIT DOUBLE (I-K) B) IMPLICIT DOUBLE PRECISION (I-K)
C) IMPLICIT DOUBLE(I,J,K) D) IMPLICIT DOUBLE I,J,K
(29) 阅读FORTRAN77下列程序:
READ(*,100) A,B,C,D
WRITE(*,*) D
100 FORMAT(F2.1,3(1X,F3.1))
END
运行上述程序时,如果从键盘输入
1234567890123456<回车>
则最后输出的X值为
A) 1.2 B) 12.3 C) 2.3 D) 23.4
(30) 阅读FORTRAN77下列程序:
READ(*,100) X
100 FORMAT(3F3.1)
WRITE(*,*) X
END
运行上述程序时,如果从键盘输入
1234.675<回车>
则最后输出的X值为
A) 1234.675 B) 1234.6 C) 12.3 D) 123.0
(31) 阅读下列FORTRAN77程序:
READ(*,100) I,J,K
100 FORMAT(3I4)
WRITE(*,200) K
200 FORMAT(1X,I4)
END
运行上述程序时,如果从键盘输入(□表示空格)
□12□□34□5□6□□749845<回车>
则最后输出的K值为
A) 5060 B) 9845 C) 560 D) 56
(32) 阅读下列FORTAN77程序:
READ(*.200) K,J
Y=MOD(K,J)/J
WRITE(*,*) Y
200 FORMAT(1X,I2,2X,I2)
END
运行上述程序时,如果从键盘输入
1248048965<回车>
则最后输出的Y值为
A) 0.3 B) 0.25 C) 0.5 D) 0.0
(33) 阅读下列FORTRAN77程序:
READ(*,*) A,B
P=MOD(B,A)
100 IF (ABS(P).GT.0.1) THEN
B=A
A=P
P=MOD(B.A)
GOTO 10
END IF
WRITE(*,*) A
END
运行上述程序时,如果从键盘输入
3.6,2.4<回车>
则最后输出的A值为
A) 3.6 B) 2.4 C) 1.2 D) 0.0
(34) 阅读下列FORTRAN77程序:
LOGICAL X,Y
READ(*,100) X,Y
100 FORMAT(2L4)
IF (X) THEN
P=1.0
ELSE IF (Y) THEN
P=2.0
ELSE IF (.NOT.X.OR.Y) THEN
P=3.0
ELSE
P=0.0
END IF
WRITE(*,*) P
END
运行上述程序时,如果从键盘输入
FXYZTABC<回车>
则最后输出的P的值为
A) 2.0 B) 3.0 C) 1.0 D) 0.0
(35) 阅读下列FORTRAN77程序:
N=0
DO 100 K=1,3
DO 100 J=1,2
N=N+K+J
100 CONTINUE
WRITE(*,*) N
END
运行上述程序后,输出的N的值为
A) 6 B) 9 C) 12 D) 21
(36) 阅读下列FORTRAN77程序:
READ(*,*) N
K=1
P=0.0
IF ((N.LE.7).AND.(N.GE.3)) THEN
10 IF (K.LE.N) THEN
P=P+K
K=K+1
GOTO 10
END IF
END IF
WRITE(*.*) P
END
运行上述程序时,如果从键盘输入
5<回车>
则最后输出的P值为
A) 0.0 B) 12.0 C) 15.0 D) 6.0
(37) 阅读下列FORTRAN77程序:
DIMENSION N(2)
DATA N/2*0/
DO 100 K=1,2
DO 100 J=1,2
N(J)=N(K)+1
100 CONTINUE
WRITE(*,200) N(2)
200 FORMAT(1X,I1)
END
运行上述程序后,输出的结果为
A) 0 B) 3 C) 2 D) 4
(38) 阅读下列FORTRAN77程序
DIMENSION M(3,2)
READ(*,100) ((K,L,M(I,J),J=1,2),I=1,3)
WRITE(*,200) ((M(I,J),I=1,3),J=1,2)
100 FORMAT(20I1)
200 FORMAT(1X,2I1)
END
运行上述程序时,如果从键盘输入
123456789012345678<回车>
则最后输出的结果为
A) 34 B) 39 C) 35 D) 34
78 56 74 56
12 28 68 78
(39) 阅读下列FORTRAN77程序:
M=1
N=2
CALL S(M,N,L,3)
WRITE(*,100) M,N,L
100 FORMAT(1X,3I1)
END
SUBROUTINE S(K,J,M,L)
K=K+1
J=J+2
N=1
M=N+L
END
运行上述程序后,输出的结果为
A) 254 B) 412 C) 244 D) 424
(40) 阅读下列FORTRAN77程序:
DIMENSION M(4,4)
DATA M/4*6,4*4,4*2,4*0/
P=S(M,2)
WRITE(*,100) P
100 FORMAT(1X,F5.2)
END
FUNCTION S(B,N)
INTEGER B(N,N)
S=1
DO 200 K=1,N
200 S=S*B(K,K)
END
运行上述程序后,输出的P值为
A) 0.00 B) 16.00 C) 24.00 D) 36.00
(41) 阅读下列FORTRAN77程序:
DIMENSION A(4,3)
COMMON /P/A
P=0.0
DO 10 K=1,3
DO 10 J=1,3
IF (P.LE.5.0) P=P+A(J,K)
10 CONTINUE
WRITE(*,*) P
END
BLOCK DATA ABC
DIMENSION B(4,3)
COMMON /P/B
DATA B/4*4.0,4*-3.0,4*2.0/
END
运行上述程序后,输出的P值为
A) 8.0 B) 7.0 C) 5.0 D) 4.0
(42) 阅读下列FORTRAN77程序:
DIMENSION A(3,3)
DO 100 K=1,3
DO 100 J=1,3
100 A(K,J)=K+J
S=P(A,2,8)
WRITE(*,*) S
END
FUNCTION P(B,M,N)
DIMENSION B(N)
P=0.0
DO 10 K=M,N
10 P=P+B(K)
END
运行上述程序后,输出的S值为
A) 20.0 B) 24.0 C) 28.0 D) 32.0
(43) 阅读下列FORTRAN77程序:
DIMENSION P(3,3)
DO 10 K=1,3
DO 10 J=1,3
10 P(K,J)=(K-1)*3+J
CALL SUB(P(2,1),3,X)
WRITE(*,*) X
END
SUBROUTINE SUB(Q,N,P)
DIMENSION Q(N)
P=0.0
DO 100 K=1,N
100 P=P+Q(K)
END
运行上述程序后,输出的X值为
A) 12.0 B) 15.0 C) 16.0 D) 13.0
(44) 阅读下列FORTRAN77程序:
INTEGER B(4,5)
DATA B/11,20,15,1,9,12,18,2,6,8,
* 10,3,22,15,21,3,17,9,35,4/
K=S(B,4,5)
WRITE(*,*) K
END
INTEGER FUNCTION S(A,M,N)
INTEGER A(M,N),D,P
DO 100 L=1,M
P=A(L,1)
K=1
DO 10 J=1,N
IF (A(L,J).LT.P) THEN
P=A(L,J)
K=J
END IF
10 CONTINUE
D=A(1,K)
DO 20 J=1,M
IF (A(J,K).GT.D) D=A(J,K)
20 CONTINUE
IF (P.EQ.D) THEN
S=P
GOTO 200
END IF
100 CONTINUE
200 CONTINUE
END
运行上述程序后,输出的K的值为
A) 1 B) 10 C) 35 D) 3
(45) 阅读下列FORTRAN77程序:
EXTERNAL PP
INTEGER P,PP,Q(4,4)
DATA Q/1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16/
WRITE(*,*) P(Q,4,PP)
END
INTEGER FUNCTION PP(B,N)
INTEGER B(N,N)
PP=0
DO 10 K=1,N
10 PP=PP+B(K,K)
END
INTEGER FUNCTION P(B,N,S)
INTEGER S,B(N,N)
P=0
DO 10 K=1,N
10 P=P+S(B,K)
END
运行上述程序后,输出的结果为
A) 55 B) 56 C) 57 D) 58
(46) 阅读下列FORTRAN77程序:
COMMON K,M,N,L
K=4
M=5
CALL AAA
WRITE(*,100) K,M,N
100 FORMAT(1X,I2)
END
SUBROUTINE AAA
COMMON J,K,M,N
J=J+K
M=J*K
N=J+M
END
运行上述程序后,输出的结果为
A) 4 B) 4 C) 9 D) 9
5 5 5 5
29 20 45 29
(47) 在FORTRAN77中,下列叙述中正确的是
A) 两个字符型常量进行比较时,数字字符"0"最小
B) 两个字符串比较时,是自右向左进行比较的
C) 两个字符串比较时,如果除空格外的所有字符都相等,则两者相等
D) 在字符关系表达式中,可以使用6种关系运算符
(48) 阅读下列FORTRAN77程序:
F(X,Y)=X*X+Y*Y
OPEN(8,FILE='FD.DAT',STATUS='NEW',ACCESS='DIRECT',
* FORM='UNFORMATTED',RECL=16)
DO 10 K=1,6
P=F(REAL(K),REAL(K+1))
10 WRITE(8,REC=K) P
CLOSE(8)
OPEN(6,FILE='FD.DAT',STATUS='OLD',ACCESS='DIRECT',
* FORM='UNFORMATTED',RECL=16)
DO 20 K=2,6,2
READ(6,REC=K) T
20 WRITE(*,100 ) T
100 FORMAT(1X,F4.1)
CLOSE(6)
END
运行上述程序后,输出的结果为
A) 5.0 B) 5.0 C) 13.0 D) 41.0
13.0 25.0 41.0 61.0
25.0 61.0 85.0 85.0
(49) 阅读下列FORTRAN77程序:
INTEGER B(4,4),P
N=4
CALL SUB(B,N)
WRITE(*,*) P(B,N)
END
SUBROUTIME SUB(Q,N)
INTEGER
DO 10 N=1,2
DO 10 M=1,8
10 Q(M,N)=8*(N-1)+M
END
INTEGER FUNCTION P(B,N)
INTEGER B(N,N)
P=0
DO 100 K=1,N
100 P=P+B(K,K)
END
运行上述程序后,输出的结果为
A) 15 B) 16 C) 17 D) 18
(50) 阅读下列车员FORTRAN77程序段:
S=0.0
DO 10 J=0,N
S=S+X
X=X+0.5
CONTINUE
下面程序段中与上述程序段等价的是
A)
S=X
J=0
10 IF (J.LT.N) THEN
X+X+0.5
S=S+X
J=J+1
GOTO 10
END IF
B)
S=0.0
J=0
10 IF (J.LE.N) THEN
J=J+1
S=S+X
X=X+0.5
GOTO 10
END IF
C)
S=0.0
J=0
10 S=S+K
J=J+1
X=X+0.5
IF (J.LE.N) GOTO 10
D)
S=X
J=0
10 X=X+0.5
S=S+X
J=J+1
IF (J.LT.N) GOTO 10
二、填空题(每空2分,共40分)
请将每一个空的正确答案写在答题卡【l】至【20】序号的横线上,答在试卷上不得分。
(1) 为了将当前盘当前目录中的所有文本文件(扩展名为.TXT)的内容打印输出,正确的单条DOS命令为 【l】 。
(2) 设当前盘为C盘。为了在A盘的当前自录\USER下建立一个新的子目录X,正确的DOS命令为 【2】 。
(3) 在 XCOPY、COPY、TIME三个 DOS命令中,属于外部命令的是 【3】 。
(4) 在32位的计算机中,一个字长等于【4】个字节。
(5) 计算机网络分为局域网和广域网,因特网属于 【5】 。
(6) 阅读下列FORTRAN77程序:
INTEGER P(4,5)
READ(*,100) ((P(K,J),J=1,5),K=1,4)
100 FORMAT(4I4)
WRITE(*,200) ((P(K,J),J=1,5),K=1,4)
200 FORMAT(1X,5I4)
END
在执行上述程序时,至少需要输入【6】行数据;运行后共输出【7】行
每行为【8】个数据。
(7) 阅读下列FORTRAN77程序:
DIMENSION B(10)
DO 10 K=1,10
10 B(K)=P(2*K)/P(K)
WRITE(*,100) B(1),B(2)
100 FORMAT(1X,2F3.1)
END
FUNCTION P(N)
K=0
DO 10 J=1,N
10 K=K+J
P=K
END
运行上述程序后,输出的B(1)值为【9】,B(2)值为【10】 。
(8) 阅读下列FORTRAN77 程序
EXTERNAL P
CALL S(P,3.0,4.0,T)
WRITE(*,100) T
100 FORMAT(1X,F5.1)
END
FUNCTION P(X,Y)
P=X*X+Y*Y
END
SUBROUTINE S(F,A ,B ,C)
C=F(A,B )
C=F(B,C)
END
运行上述程序后,输出的T的值为【11】 。
(9) 下列FORTRAN77 程序的功能是,从键盘输入5组实数,每组有10个实数,并输出各组中元素绝对值之和的最大值与最小值。请在程序中的下划线处填入合适的内容。
AMAX=0.0
AMIN=0.0
SO 200 K=1, 5
【12】
DO 100 J=1,10
READ(*,*) X
SUM=SUM+【13】
100 CONTINUE
IF (SUM.GT.AMAX ) 【14】
IF ((K.EQ.1).OR.(SUM.LT.AMIN)) AMIN=SUM
CONTINUE
WRITE(*,*) 'AMAX=',AMAX, 'AMIN=',AMIN
END
(10) 下列FORTRAN77程序的功能是,从键盘依次输入10个实数赋给一个长度为10的一维实型数组。在输入数据过程中,要求保持该数组中的元素是从小到大排列的,并且去掉值相同的数据,最后在数组的最后的剩余元素中均赋以0。请在程序中的下划线处填入合适的内容。
DIMENSION A(10)
K=1
DO 100 KK=1,10
READ(*,*) X
J=K-1
10 IF (J.GT.0) THEN
IF (X.LT.A(J)) THEN
【15】
J=J-1
GOTO 10
END IF
END IF
IF ((J.GT.0).AND.(X.EQ.A(J))) THEN
DO 50 L=J+1,K-1
50 A(L)=A(L+1)
ELSE
【16】
K=K+1
END IF
100 CONTINUE
DO 200 KK=K,10
200 【17】
WRITE(*,300) (A(K),K=1,10)
FORMAT(1X,5F10.5)
END
(11) 下面FORTRAN77程序的功能是输出2到点500之间的所有亲密数对。亲密数对的定义为:如果M的因子(包括号1但不包括自身,下同)之和为N,且N的因子之和为M,则称自然数M与N为一对亲密数,例如,6的所有因子之和为1+2+3=6,因此6与它自身构成一对亲密数。请在程序中的下划线处填入合适的内容。
DO 100 M=【18】
N=0
【19】
DO 10 K=1, L
IF (MOD(M,K).EQ.0) N=N+K
10 CONTINUE
J=0
【20】
DO 20 K=1, L
IF (MOD(N,K).EQ.0) J=J+K
20 CONTINUE
IF ((M.EQ.J).AND.(M.LE.N)) WRITE(*,*) M,N
100 CONTINUE
END
〖完〗
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -