查看全部128種考試
軟件水平考試
 考試動態(tài) 報考指南 歷年真題 模擬試題 復(fù)習(xí)資料 心得技巧 專業(yè)英語 技術(shù)文章 軟考論壇 考試用書
 程序員 軟件設(shè)計師 網(wǎng)絡(luò)管理員 網(wǎng)絡(luò)工程師 系統(tǒng)分析師 數(shù)據(jù)庫系統(tǒng)工程師
1
2
3
4
5
6
7
8
9
10
xihuyu2000  
【字體: 1990年程序員下午試卷及答案
1990年程序員下午試卷及答案
spks.exam8.com 來源:考試吧(Exam8.com) 更新:2005-4-10 8:22:00 軟件水平考試 考試論壇

試題 2

在 COMET 型計算機(jī)上可以使用試卷上所附的 CASL 匯編語言。閱讀下列程序說明和 CASL 程序,把應(yīng)填入程序中__(n)__ 處的字句,寫在答卷的對應(yīng)欄內(nèi)。

[程序說明]


這是一個在某項比賽中計算每一位選手最終得分的子程序。計分辦法如下:

(1)十名評委,在 0~100 的整數(shù)范圍內(nèi)給選手評分。

(2)十個得分中,除去一個最高分(如有同樣兩個以上最高分也只除去一個),除去一個最低分( 如有同樣兩個以上最低分也只除去一個 ),剩下的八個得分取平均值為該選手的最終得分。(平均值按四舍五入原則取成整數(shù))

進(jìn)入此子程序時,GR1 內(nèi)存放十個評委評分的起始地址。返回主程序時,該選手的得分存放在 GR0 內(nèi),GR1~GR3中的值均保持不變。

[問題]

在程序中的 ①~⑧ 處各填入一條正確的指令,以完成此程序。除非必要,標(biāo)號欄不要填寫。

[程序]

標(biāo)號 操作碼 操作數(shù)
FINAL START
PUSH 0,GR1
PUSH 0,GR2
PUSH 0,GR3
LD GR0,0,GR1
ST GR0,MAX
ST GR0,MIN
__①__
NEXT LEA GR2,-1,GR2
JZE MEAN
__②__
LD GR3,0,GR1
__③__
CPA GR3,MAX
JMI GOONl
ST GR3,MAX
GOONl CPA GR3,MIN
JPZ GOON2
ST GR3,MIN
GOON2 __④__
MEAN SUB GR0,MAX
SUB GRO,MIN
__⑤__
SRA GR0,3
__⑥__
__⑦_(dá)_
__⑧__
RET
MAX DS 1
MIN DS 1
FOUR DC 4
END

 

試題 3

閱讀下列程序說明和 C 程序,將應(yīng)填入程序中__?__處的字句寫在答卷紙的對應(yīng)欄內(nèi)。

[程序說明]


函數(shù) vr6174 是對卡布列克運算的驗證程序。

所謂卡布列克運算,是指任意一個四位數(shù),只要它們各個位上的數(shù)字不全相同,就有這樣的規(guī)律:

(1)把組成這個四位數(shù)的四個數(shù)字由大到小排列,形成由這四個數(shù)字構(gòu)成的最大的四位數(shù); 

(2)把組成這個四位數(shù)的四個數(shù)字由小到大排列,形成由這四個數(shù)字構(gòu)成的最小的四位數(shù)( 如果四個數(shù)字中含有 0,則此數(shù)不足四位 );

(3)求出以上兩數(shù)之差,得到一個新的四位數(shù)。

重復(fù)以上過程,總能得到最后的結(jié)果是 6174。

如果當(dāng) n=5346 時調(diào)用 vr6174(n),便會輸出以下結(jié)果:

6543-3456=3087 8730-378=8352 8532-2358=6174

函數(shù) vr6174 采用了遞歸算法,并調(diào)用 parse_sort 和 max_min 函數(shù)。其中 parse_sort 函數(shù)把所給的四位數(shù)分解為四個一位數(shù)字,并將其從小到大排序,放入數(shù)組 each;max_min 函數(shù)根據(jù) each 的值形成所要求的最大四位數(shù)和最小四位數(shù)。

[程序]

vr6147( num )

int num;

{ inteach[4],max,min;

if ( num!=6174&&num )

{ parse_sort( num,each );

max_min( __①__);

num = max_min;

printf( "%d-%d=%d",max,min,num ),

vr6174( nurn );

}

else printf( ".\n" );

return;

}

parse_sort( num,each )

int num,*each;

{ int i,*j,*k,temp;

for ( i;0;i<4;i++ )

{ j=each+3-i;

__②__;

hum=num/10;

}

for ( i=0;i<3;i++ )

for ( j-each,k=each+1;;j<each+3-i;__③__ )

{ if ( *j>*k )   { temp=*j; *j=*k; *k=temp;

}

}

retrun;

}

max_min( each,max,min )

int *each,*max,*min;

{ int *j;

min=0

for ( i;each;i<each+4;i++ )

*min=__④__;

*max=0;

for ( i;each+3;i>=each;i-- )

*max=__⑤__;

return;

}

 

試題 7

在 COMET 型計算機(jī)上可以使用試卷上所附的 CASL 匯編語言,閱讀下列程序說明和 CASL 程序,把應(yīng)填入程序中__(n)__處的字句,寫在答卷的對應(yīng)欄內(nèi)。

[程序說明]


從語言音素粗分類的角度出發(fā),可以對任一個英文單詞產(chǎn)生一個四字符的聲音相似碼。

其處理方式如下:

(1)保留單詞中的首字母作為聲音相似碼的首字符。若首字母為小寫字母,則需先改為大寫字母才能被保留。

(2)對首字母以后的字母按下表中出現(xiàn)的對應(yīng)關(guān)系變換為‘0’~‘6’的數(shù)字。

字母

A

a

B

b

C

c

D

d

E

e

F

f

G

g

H

h

I

i

J

j

K

k

L

1

M

m

N

n

O

o

P

p

Q

q

R

r

S

s

T

t

U

u

V

v

W

w

X

x

Y

y

Z

z

對應(yīng)
數(shù)字

0

1

2

3

0

1

2

0

0

2

2

4

5

5

0

1

2 6

2

3

0

1

0

2

0

2


    (3)若字母變換而得的數(shù)字為'0',則不出現(xiàn)在聲音相似碼中;若相鄰的字母產(chǎn)生相同的數(shù)字,則在聲音相似碼中只保留一個數(shù)字。

(4)遇到下列情況之一程序執(zhí)行終止:

① 輸入的第一個字符不是英文字母,程序返回,輸出 '0000'。

② 已產(chǎn)生四個字符的聲音相似碼( 包括第一個字母 )時,程序不再處理其余字符。

③ 單詞已處理完( 以非字母符為結(jié)束標(biāo)志 ),若聲音相似碼不足四字符,則程序以字符'0'補(bǔ)足四個字符。

例:

輸入字符串 輸出
computer# 'C513'
an# 'A500'
5sohware# '0000'

 英文字母,'A'~'Z','a'~'z'的 ASCII 碼的十進(jìn)制值為 65~90,97~122;字符 '0'的十進(jìn)制值為 48。

[問題]

在程序中的 ①~⑥ 處各填入一條正確的指令,以完成此程序。除非必要,標(biāo)號欄不要填寫。

[程序]

標(biāo)號 指令碼 操作數(shù)
START
IN STR,LENG
__(1)__
LEA GR0,48
ST GR0,0,GR1
ST GR0,1,GR1
ST GR0,2,GR1
ST GR0,3,GR1
LEA GR2,STR
CALL GETCH
JMP L4
LEA GR1,0
L1 ST GR3,SOUT,GR1
LEA GR1,1,GR1
__(2)__
JZE L4
L2 ST GR3,RESV
L3 __(3)__
CALL GETCH
JMP L4
__(4)__
LD GR3,TABLE,GR3
__(5)__
JZE L2
CPL GR3,RESV
JZE L3
JMP L1
L4 EXIT
GETCH LD GR3,0,GR2
LEA GR0,-97,GR3
JMI G1
LEA GR3,-32,GR3
G1 LEA GR0,-65,GR3
JMI G2
LEA GR0,-91,GR3
JPZ G2
LD GR0,0,GR4
__(6)__
ST GRO,0,GR4
G2 RET
RESV DS 1
SOUT DS 4
STR DS 80
LENG DS 1
TABLE DC '0123012002245'
DC '5012623010202'
TWO DC 2
END


試題 8

閱讀下列程序說明和 C 程序,將應(yīng)填入程序中__(n)__ 處的字句,寫在答卷紙的對應(yīng)欄內(nèi)。

[程序說明]

本程序?qū)崿F(xiàn)變元為 x,y,z 的兩個整系數(shù)多項式的相加。用一個循環(huán)鏈表表示多項式,表中每個節(jié)點表示該多項式中的一項,格式如圖1所示。它表示項 coef *xiyjzk,其中 coef 表示項系數(shù);項指數(shù) index=i*100+j*lO+k( i,j,k皆為整數(shù),且0≤i,j,k≤9 );next 為指向下一個節(jié)點的指針。鏈表中設(shè)置一個表頭節(jié)點,其值如圖2所示。它指向多項式的首項。表中其余節(jié)點按 index 值的降序排列。例如,多項式 3x6-5x5y2+6y6z 可表示為圖3。


    本程序定義兩個多項式 (p) 和 (q),通過調(diào)用 blist 構(gòu)成兩個循環(huán)鏈表 p* 和 q·* 將 (p) 加到 (q) 上,其結(jié)果,表 p ·不變,表 q 為兩多項式 (p) 和 (q) 之和。兩多項式相加通過調(diào)用 polyadd 來實現(xiàn)。

算法:比較 (p) 和 (q) 的項指數(shù),如相等,則項系數(shù)累加進(jìn) (q) 的對應(yīng)項系數(shù);如 (p) 的項指數(shù)小于 (q) 的項指數(shù),則比較 (q) 的下一項;如 (p) 的項指數(shù)大于 (q) 的項指數(shù),則將 (p) 的該項插入 (q) 中。如項系數(shù)相加后值為 0,則從 (q) 中刪除該項。

 

[1] [2] 下一頁

轉(zhuǎn)帖于:軟件水平考試_考試吧
文章搜索  
看了本文的網(wǎng)友還看了:
網(wǎng)友評論
昵 稱: *  評 分: 1分 2分 3分 4分 5分
標(biāo)題:   匿名發(fā)表    (共有條評論)查看全部評論>>
版權(quán)聲明 -------------------------------------------------------------------------------------
  如果軟件水平考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系,我們將會及時處理。如轉(zhuǎn)載本軟件水平考試網(wǎng)內(nèi)容,請注明出處。
關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  付款方式  站內(nèi)導(dǎo)航  客服中心  友情鏈接  考試論壇  網(wǎng)站地圖
Copyright © 2004-2008 考試吧軟件水平考試網(wǎng) All Rights Reserved    
中國科學(xué)院研究生院權(quán)威支持(北京) 電 話:010-62168566 傳 真:010-62192699
百度大聯(lián)盟黃金認(rèn)證  十佳網(wǎng)絡(luò)教育機(jī)構(gòu)  經(jīng)營許可證號:京ICP060677