2021年計算機技術基礎Fortran試題庫_第1頁
2021年計算機技術基礎Fortran試題庫_第2頁
2021年計算機技術基礎Fortran試題庫_第3頁
2021年計算機技術基礎Fortran試題庫_第4頁
2021年計算機技術基礎Fortran試題庫_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

一、選取題1、下列關于"SUBROUTINEMAP(X,Y)"語句行論述中,不對的是()

A)這是子程序第一種語句B)字符串"MAP"是子程序名

C)變量X是子程序形參D)子程序執(zhí)行后,MAP將返回整型數據2、FORTRAN表達式"2/4+0.5"值是()

A)0.5B)1C)1.03、閱讀下列FORTRAN程序:

PI=3.14159265

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

END

程序運營后輸出成果是()

A)3.142B)3.1415C)0.314164、圓直徑存儲在整型變量K之中,下列計算圓面積表達式中對的是()

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

C)3.1415926*(K/2)**2D)3.1415926*(K/2)*(K/2)5、要判斷"月收入M在元以上(含元)且5000元如下)不含5000元)"職工,應當使用邏輯表達式是()

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

C)M.GE..AND.M.LT.5000D)M.GE..OR.M.LT.50006、設FORTRAN子程序如下:

SUBROUTINESUB(I,X)

B=I+1

X=X+B

END

若主程序中變量M,B已按I-N規(guī)則賦值,則調用上述子程序語句中對的是()

A)CALLSUB(M,M)B)CALLSUB(M+4,B)

C)CALLSUB(B,B)D)CALLSUB(M,B+4)7、下列不是FORTRAN常量是()

A)(3.0,4.0)B)3.1416D+00C8、閱讀下列FORTRAN程序:

F=1.0

DO20K=3,7,3

DO20L=K-1,K

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

END

程序運營成果最后一行是()

A)36.0B)66.0C)6180.0D)79、在FORTRAN中,下列運算符優(yōu)先順序是()

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.LB).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,313、給定下列FORTRAN子程序如下:

SUBROUTINESUB(K,A)

A=SQRT(K*K+1.0)

END

下列調用語句中對的是()

A)CALLSUB(N,N)B)CALLSUB(X,X)

C)CALLSUB(N,X*X)D)CALLSUB(11,X)14、閱讀下列FORTRAN程序:

INTEGERAA(2,3)

DATAAA/1,2,3,4,5,6/

CALLS2D19(AA)

CALLS2D19(AA(1,2))

END

SUBROUTINES2D19(BB)

INTEGERBB(2,2)

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

END

程序運營成果是()

A)14B)15C)14D)12

362625315、閱讀下列FORTRAN程序:

INTEGERA(3,3)

DO10K=1,3

DO10L=1,3

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

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

END

程序運營成果是:()

A)112131B)111213C)313233D)333231

122232212223212223322221

13233331323311121316、閱讀下列FORTRAN程序:

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

10FORMAT(/3X,A,I4)

END

程序運營成果是(^代表空格,下同)()

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

C)空白行D)空白行

^^^^^YEAR:1996^^YEAR:199617、某函數子程序中使用了IMPLICIT、READ、COMPLEX和FUNCTION四種語句,其中屬于可執(zhí)行語句是:()

A)FUNCTIONB)READC)COMPLEXD)IMPLICIT18、閱讀下列FORTRAN程序:

DIMENSIONM(4,4)

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

DO10I=1,4

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

10CONTINUE

100FORMAT(1X,4I2)

END

程序運營成果是()

A)1234B)1593C)1D)1

67860426266

121537193711

66482634482619、閱讀下列FORTRAN程序:

CHARACTER*10A,B*6

DO10I=1,10

A(I:I)=''

10COUNTINUE

A(1:5)='ABCDE'

B='FGHIJK'

A(4:9)=B

WRITE(*,100)A

100FORMAT(1X,A)

END

程序運營成果是:()

A)ABCDEFGHIJB)ABCDEGHIJKC)ABCFGHIJKD)BCDEFGHIJK20、閱讀下列FORTRAN程序:

INTRINSICSIN,COS

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

END

FUNCTIONFUN(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)

REALZ(N)

SUMX=0.0

SUMX2=0.0

DO10K=1,N

【2】

SUMX=SUMX+X

SUMX2=SUMX2+X*X

10CONTINUE

AV=SUMX/N

AV2=SUMX2/N

S2=AV2-AV*AV

SIGMA=【3】

END2、下列FORTRAN程序功能是將30個學生考試成績讀入數組A,然后記錄并且輸出最高分數以及不大于60分、60~80分與不不大于80分三個分數段學生數。請在程序中下劃線處填入適當內容。

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

DATAC/3*0/

READ(*,*)A

【5】

DO10K=2,30

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

10CONTINUE

DO30K=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

30CONTINUE

WRITE(*,*)B,C

END3、下列FORTRAN程序功能是用對分法求出方程4.1x3-5.2x=11.8在區(qū)間(1,5)中一種實數根,規(guī)定輸出根近似值和對分次數。請在程序中下劃線處填入適當內容。

【7】=4.4*X**3-5.2*X-11.8

DATAXL,XR,N/1.0,5.0,0/

10N=N+1

X=(XL+XR)/2.0

FX=FUN(X)

IF(ABS(FX).LT.1E-6.OR.N.GE.1000)THEN

WRITE(*,'(1X,A2,F12.7,A5,I4)')'X=',X,'N=',N

ELSE

IF(FUN(XR)*FX.GE.0.0)THEN

XR=X

【8】

XL=X

ENDIF

【9】

ENDIF

END4、下列FORTRAN程序功能是計算多項式y(tǒng)=2+2.1x+3.2x3+5.4x5在x=1.7時值。主程序調用了函數子程序POLY。請在程序中下劃線處填入適當內容。

PROGRAMPVALUE

REALA(6)

DATAA/【10】/

DATAN,X/6,1.7/

Y=POLY(A,N,X)

WRITE(*,'(1X,A5,6F5.1)')'a(k)=',A

WRITE(*,'(1X,A2,F5.1,A6,F8.2)')'X=',X,';Y=',Y

END

FUNCTIONPOLY(B,M,V)

【11】

POLY=B(1)

FV=1.0

DO10K=2,M

FV=FV*V

10POLY=POLY+【12】

END5、下列FORTRAN程序功能是使用篩法篩選出N以內所有素數并輸出。其算法如下:

在N以內自然數列中先篩除2倍數(不涉及2);在2之后未篩去第一種數是3,于是再篩除3倍數;在3之后未篩去第一種數是5,于是再篩除5倍數;如此重復下去,直到碰見篩剩余第一種數是最接近N平方根那個數為止。請在程序中下劃線處填入適當內容。

PARAMETER(N=100)

【13】A(N),P(N)

A(1)=0

DO10K=2,N

10A(K)=K

DO20K=3,N

20IF(MOD(A(K),2).EQ.0)A(K)=0

ISR=SQRT(FLOAT(N))

DO30M=3,ISR,2

DO30K=M+2,N

30IF(A(K).NE.0.AND.MOD(A(K),M).EQ.0)【14】

M=1

DO40K=1,N

IF(A(K).NE.0)THEN

P(M)=【15】

M=M+1

ENDIF

40CONTINUE

WRITE(*,'(1X,10I8)')(P(K),K=1,M-1)

END三、編寫程序題1、以循環(huán)來計算1/1!+1/2!+1/3!+1/4!+……+1/10!值。2、編寫一種程序計算圓面積,輸入兩個參數,一種參數為輸入圓半徑長,另一種參數用來返回圓面積。3、運用選取排序法編制程序,將數組A中所有數值(5,3,6,4,8,7,1,9,2,10)從小到大排列。參照答案及評分原則一、選取題1、D2、A3、D4、A5、C6、B7、C8、B9、C10、D11、B12、C13、D14、A15、A16、D17、B18、C19、C20、C

二、填空題【1】FUNCTION

【2】X=Z(K)

【3】SQRT(S2)

【4】INTEGER或者REAL

【5】B=A(1)

【6】.AND.

【7】FUN(X)

【8】ELSE

【9】GOTO10

【10】2.0,2.10.0,3.2,0.0,5.4

(注:順序不可顛倒,小數點先后0可以省略其中一種。)

【11】DIMENSIONB(M)或者REALB(M)

【12】B(K)*FV或者FV*B(K)

【13】INTEGER

【14】A(K)=0或者A(K)=0.0

【15】A(K)三、編寫程序題1、解題程序:programmainimplicitnoneinteger,parameter::max=10integerirealitemrealansans=1.0item=1.0doi=2,maxitem=item/real(i)ans=ans+itemenddowrite(*,*)ansstopendprogram2、解題程序:programmainimplicitnonerealradius,areawrite(*,*)"請輸入半徑長"read(*,*)radiuscallCircleArea(radius,area)write(*,"('面積='F8.3)")areastopendprogramsubroutineCircleArea(radius,area)implicitnonereal,parameter::PI=3.14159realradius,areaarea=radius*radius*PIendsubroutine3、解題程序:programmainimplicitnoneinteger,parameter::size=10integer::a(size)=(/5,3,6,4,8,7,1,9,2,10/)integer::i,jinteger::tdoi=1,size-1doj=i+1,sizeif(a(i)>a(j))then!a(i)跟a(j)互換 t=a(i)a(i)=a(j) a(j)=t endif enddoenddowrite(*,"(10I4)")astopend一、選取題1、下列關于FORTRAN源程序編輯規(guī)則論述之中,對的是()

A)IMPLICIT語句可以放在REAL語句行之后

B)DATA語句可以在放在緊靠END語句行之前

C)注釋行不可以放在END語句行之后

D)FORMAT語句可以放在PROGRAM語句行之前2、下列FORTRAN源程序變量名之中,不符合規(guī)則是()

A)WB)W3C)-33、若FORTRAN中一種INTEGER型數據占用2個字節(jié),那么該類型數據值范疇是()

A)-B)-3276832767

C)0D)0655354、閱讀下列程序

X=0.618

WRITE(*,'(E12.4)')X

END

程序運營后顯示成果是()

A).6180B)6.180E-01C).0618E+015、梯形上底為A,下底為B,高為H,計算其面積FORTRAN表達式中錯誤是()

A)1/2*(AB)*HB)(A+B)*H/2C)(A+B)/2*H6、要選拔身高T>1.7米且體重W<62.5公斤人,FORTRAN邏輯表達式是()

A)T.CE.1.7.AND.W.LE.62.5B)T.LE.1.7.OR.W.GE.62.5

C)T.GT.1.7.AND.W.LT.62.5D)T.GT.1.7.OR.W.LT.62.57、在FORTRAN變量類型闡明語句中沒有()

A)REAl語句B)CHAR語句C)INTEGER語句D)LOGICAL語句8、一次成功FORTRAN源程序編譯操作,不能()

A)同步編譯一種主程序和一種子程序B)同步編譯幾種子程序

C)同步編譯一種主程序和幾種子程序D)同步編譯幾種主程序9、閱讀下列程序

F=1.0

DO20,J=3,7,2

DO20,K=J-1,J

20F=F*K

WRITE(*,'(13,F8.1)')J,F

END

程序運營成果是

A)36.0B)5120.0C)95040.010、閱讀下列程序

CHARACTER*10W

DOK=1,10

READ*,W

IF(W(1:2).EQ.'AB'.OR.W(1:2).EQ.'ab')WRITE(*,*)'',W

ENDDO

END

程序功能是()

A)首字符是A或B字符串被輸出顯示

B)第一、二個字符是AB或ab字符串被輸出顯示

C)首字符是a或b字符串將被輸出顯示

D)第一、二個字符是Aa或Bb字符串將被輸出顯示11、閱讀下列程序

LOGICALL

READ(*,*)A,B

L=A.GT.B

IF(L)THEN

X=B+2*A

ELSE

X=B

ENDIF

WRITE(*,*)X

END

使用鍵盤為上述程序輸入兩個初值4和3,其輸出X值是()

A)4.0B)3.0C)11.012、閱讀下列程序

READ(*,*)K

WRITE(*,100)K

100FORMAT(I5)

END

程序運營時輸入初始值12345,那么顯示成果是

A)2345B)12345C)****D)*****13、閱讀下列程序

INTEGERF

F(X,Y)=X+Y

A=-2.5

B=2.1

B=B+F(A,B)

WRITE(*,'(F3.1)')B

END

程序運營成果是()

A).1B).7C)2.114、閱讀下列程序

A=3.5

CALLSUBA(A,A,A)

WRITE(*,'(F4.1)')A

END

SUBROUTINESUBA(X,Y,Z)

Y=Y-2.0

Z=Z+X

END

程序運營成果是()

A)7.0B)5.0C)3.515、閱讀下列程序

CHARACTERA*4,B*5,C*4

DATAA,B,C/'BIG’,'MIDDLE','SMALL'/

WRITE(*,20)A,B,C

20FORMAT(1X,A2,A3,A4)

END

程序運營成果是()

A)BIGMIDDLEB)*********C)BIGMIDSMAD)BIMIDSMAL16、閱讀下列程序

N=0

DO10K=1,3

N=N+1

M=K*N

10CONTINUE

WRITE(*,'(1X,2I3)')M,K

END

程序運營成果是()

A)94B)93C)124D)1217、閱讀下列程序

FUN(c,d)=a*c+b/d

DATAa,b/1.0,1.0/

WRITE(*,'(F4.1)')FUN(a,b)-FUN(b,a)

END

程序運營成果是()

A)0.0B)4.0C)2.O18、閱讀下列程序

LOGICALL1,L2,L3,L4,L5

DATAL1,L2,L3/3*.TRUE./

L4=.NOT.L1.AND..NOT.L2.AND.L3

L5=.NOT.L1.OR..NOT.L2.OR.L3

WRITE(*,*)L4,L5

END

程序運營成果是()

A)TTB)TFC)FFD)FT19、閱讀下列程序

DIMENSIONM(3,3)

DATAM/1,2,3,4,5,6,7,8,9/

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

100FORMAT(1X,3I2)

END

程序運營成果是()

A)258B)369C)456D)7820、閱讀下列程序

INTEGERA(100),G

READ(*,*)N,(A(I),I=1,N)

DO10I=1,N-1

G=I

DO20J=I+1,N

IF(A(J).LT.A(G))THEN

G=J

ENDIF

20CONTINUE

K=A(I)

A(I)=A(G)

A(G)=K

10CONTINUE

WRITE(*,'(1X,10I2)')(A(I),I=1,N)

END

程序運營時輸入初始值是3,6,9,8,則運營成果是()

A)698B)896C)689D)98二、填空題1、閱讀下列程序,其功能是求出方程2X3-3X2+4X-11=0在區(qū)間(1,5)中一種實數根,運營成果是顯示根值和對分次數,使用是二分算法。請在其中_____處填入恰當內容。

FUN(X)=2.0*X**3-3.0*X**2+4.0*X-11.0

DATAXL,XR,N/1.O,5.0,0/

10CONTINUE

【1】

X=(XL+XR)/2.0

【2】

IF(ABS(FX).LT.1E-6.OR.N.GE.1000)THEN

WRITE(*,'(1X,A2,F12.7,A5,14)')'X=',X,'N=',N

ELSE

IF(FUN(【3】)*FX.GE.0.0)THEN

XR=X

ELSE

XL=X

ENDIF

GOTO10

ENDIF

END2、閱讀下列程序.其功能是計算Y=1+1.1X+1.2X2+1.3X3+1.4X4+1.5X5當X=3.1時值。主程序調用了函數子程序。請在其中____處填入恰當內容。

PROGRAMPVALUE

【4】

DATAA/1.0,1.1,1.2,1.3,1.4,1.5/,N,X/6,3.1/

【5】

WRITE(*,'(1X,A5,6F5.1)')'a(k)=',A

WRITE(*,'(1X,A2,F5.1,A6,F8.2)')'X=',X,';Y=',Y

END

FUNCTIONPOLY(B,M,V)

DIMENSIONB(M)

POLY=B(1)

FV=1.0

DO10K=2,M

FV=FV*V

10【6】=POLY+B(K)*FV

END3、函數子程序DTOH可以將一種十進制正整數DEC轉換為一種表達十六進制數字符字符串,其長度不超過8。例如127轉換為'7F'。算法是:將DEC除16取余,將所得商再除16取余,如此重復,直到商和零為止,最后按照逆序輸出所得各個余數。請在其中____處填入恰當內容。

CHARACTER*8FUNCTIONDTOH(DEC)

INTEGERDEC,R,POS

POS=9

DTOH=''

111CONTINUE

【7】

IF(POS.GE.1)THEN

R=MOD(DEC,16)

IF(R.LT.1O)THEN

【8】=CHAR(ICHAR('0')+R)

ELSE

DTOH(POS:POS)=CHAR(ICHAR('A')+R-10)

ELSE

DTOH='**********'

GOTO999

ENDIF

DEC=DEC/16

IF(【9】)GOTO111

999CONTINUE

END

PROGRAMDECHEX

CHARACTER*8DTOH

WRETE(*,*)DTOH(127)

END4、有一種十進制四位數ABCD與一種十進制三位數CDC差等于十進制三位數ABC.下列程序按"ABCD=9876"樣式打印出ABCD這個數。請在其中____外填入恰當內容.

INTEGERA,B,C,D

DO10A=1,9

DO10B=0,9

DO10C=1,9

【10】

L=1000*A+100*B+10*C+D

M=100*C+10*D+C

N=100*B+C

IF(【11】)WRITE(*,'(【12】)')'XABCD=',A,B,C,D

10CONTINUE

END5、閱讀下列程序,其功能是使用篩法選出N以內所有素數并顯示算法在N以內自然數列中先篩除2倍數;在2之后篩乘下第一種數是3,于是再篩除3倍數;在3之后篩剩余第一種數是5,于是再篩除5倍數;如此重復下去,直到碰見篩剩余第一種數是最接近N平方根那個數為止。請在其中____處填入恰當內容。

PROGRAMPRINES

PARAMETER(N=100)

INTEGERA(N),P(N)

DO10K=1,N

10A(K)=K

DO20K=3,N

20IF(【13】.EQ.0)A(K)=0

ISR=SQRT(REAL(N))

DO30M=3,ISR,2

DO30K=M+2,N

30IF(A(K).NE.0.AND.MOD(A(K),M).EQ.0)A(K)=0

M=1

DO40K=2.N

IF(A(K).NE.0)THEN

【14】

M=M+1

ENDIF

40CONTINUE

WRITE(*,'(1X,1018)')(P(K),【15】)

END三、編寫程序題1、以循環(huán)來計算等差數列1+3+5+7+

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論