版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
全國計算機(jī)技術(shù)與軟件專業(yè)技術(shù)資格(水平)考試
全真模擬試卷(三)下午試題(考試時間14∶00~16∶30,共150分鐘)
本試卷共六道試題,滿分75分?!裨囶}一
閱讀以下說明和流程圖(如圖1所示),回答問題1至問題4,將答案寫在答卷的對應(yīng)欄內(nèi)。
【說明】
本流程圖是將中綴表示的算術(shù)表達(dá)式轉(zhuǎn)換成后綴表示。如中綴表達(dá)式
(A-(B*C+D)*E)/(F+G))
的后綴表示為
ABC*D+E*-FG+/
為了方便,假定變量名為單個英文字母,運(yùn)算符只有+、-、*、/(均為雙目運(yùn)算符,左結(jié)合),并假定所提供的算術(shù)表達(dá)是非空且語法是正確的。另外,中綴表示形式中無空格符,但整個算術(shù)表達(dá)式以空格符結(jié)束。流程圖中使用的符號的意義如下:
數(shù)組IN[]存儲中綴表達(dá)式;
數(shù)組POLISH[]存儲其后綴表達(dá)式;
數(shù)組S[]是一個后進(jìn)先出棧;
函數(shù)PRIOR(CHAR)返回符號CHAR的優(yōu)先級,各符號的優(yōu)先級見表2:
表2CHARPRIOR(XHAR)*/4+-3(2)1【問題1】
填充流程圖中①的判斷條件。
【問題2】
寫出子程序A的功能,并順序?qū)懗鰧?shí)現(xiàn)該功能的操作
【問題3】
寫出子程序B的功能,并順序?qū)懗鰧?shí)現(xiàn)該功能的操作。
【問題4】
中綴表達(dá)式
(A+B-C*D)*(E-F)/G
經(jīng)該流程圖處理后的輸出是什么?
【流程圖】
圖1
●試題二
閱讀下列程序和控制流圖,將應(yīng)填入(n)的字句寫在答題紙的對應(yīng)欄內(nèi)。
【程序】圖2控制流圖下面是一段求最大值的程序,其中datalist是數(shù)據(jù)表,n是datalist的長度。
intGetMax(intn,intdatalist[]){
intk=0;
for(intj=1;j<n;j++)
if(datalist[j]>datalist[k])
k=j(luò);
returnk;
}
【控制流圖】
【問題1】
該程序的控制流圖中A~E分別是什么?
【問題2】
計算控制流圖的McCabe環(huán)路復(fù)雜性。
【問題3】
用基本路徑覆蓋法給出測試路徑。
【問題4】
為各測試路徑設(shè)計測試用例。
●試題三
請補(bǔ)充函數(shù)fun(),該函數(shù)的功能是:只保留字符串中的大寫字母,刪除其他字符,結(jié)果仍保存在原來的字符串中,由全局變量m對刪除后字符串的長度進(jìn)行保存。
注意:部分源程序給出如下。
請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的橫線上填入所編寫的若干表達(dá)式或語句。
試題程序:
#include<stdio.h>
#include<conio.h>
intm;
voidfun(char*s)
{
inti=0,j=0;
char*p=s;
while(*(p+i))
{
if(*(p+i)>=′A′&&*(p+i)<=′Z′)
{
(1);
}
(2);
}
s[j]=′\0′;
(3);
}
main()
{
charstr[80];
clrscr();
printf("\nEnterastring:");
gets(str);
printf("\n\nThestringis:s\n",str);
fun(str);
printf("\n\nThestringofchangingis:s\n",str);
printf("\n\nThelengthofchangedstringis:d\n",m);
}
●試題四閱讀下列程序說明和C代碼,將應(yīng)填入(n)處的字句寫在答題紙的對應(yīng)欄內(nèi)?!境绦?.1說明】“背包問題”的基本描述是:有一個背包,能盛放的物品總重量為S,設(shè)有N件物品,其重量分別為w1,w2,...,wn,希望從N件物品中選擇若干件物品,所選物品的重量之和恰能放入該背包,即所選物品的重量之和等于S。如下程序均能求得“背包問題”的一組解,其中程序4.1是“背包問題”的遞歸解法,而程序4.2是“背包問題”的非遞歸解法?!境绦?.1】#include<stdio.h>#defineN7#defineS15intw[N+1]={0,1,4,3,4,5,2,7};intknap(ints,intn){if(s==0)return1;if(s<0||(s>0&&n<1))return0;if((1))){printf(″%4d″,w[n]);return1;}return(2);}main(){if(knap(S,N))printf(″OK!\n″);elseprintf(″NO!\n″);}【程序4.2】#include<stdio.h>#defineN7#defineS15typedefstruct{ints;intn:intjob;}KNAPTP;intw[N+1]={0,1,4,3,4,5,2,7};intknap(ints,intn);main(){if(knap(S,N))printf(″OK!\n″);elseprintf(″NO!\n″);}intknap(ints,intn){KNAPTPstack[100],x;inttop,k,rep;x.s=s;x.n=n;x.job=0;top=l;stack[top]=x;k=0;while((3)){x=stack[top];rep=1;while(!k&&rep){if(x.s==0)k=1;/*已求得一組解*/elseif(x.s<0||x.n<=0)rep=0;else{x.s=(4);x.job=1;(5)=x;}}if(!k){rep=1;while(top>=1&&rep){x=stack[top--];if(x.job==1){x.s+=w[x.n+1];x.job=2;stack[++top]=x;(6);}}}}if(k){/*輸出一組解*/while(top>=1){x=stack[top--];if(x.job==1)printf(″%d\t″,w[x.n+1]);}}returnk;}
●試題五
閱讀下列程序說明和C++代碼,將應(yīng)填入(n)處的字句寫在答卷的對應(yīng)欄內(nèi)。
【說明】
①定義類Table的私有數(shù)據(jù)成員x和y,分別用于表示九九表中的兩個乘數(shù)(x*y),它們都是int型的數(shù)據(jù)。
②完成類Table的成員函數(shù)print()的定義,該函數(shù)以“x*y=z”的格式打印出九九表中的一個乘法算式,請使用格式化輸出函數(shù)printf實(shí)現(xiàn)。
③完成類Table9的成員函數(shù)print()的定義,該函數(shù)調(diào)用基類Table的print()函數(shù),將九九表輸出到屏幕。
④補(bǔ)充主函數(shù),在屏幕上輸出九九表,以便測試所定義的類的正確性。
源程序文件test8_3.cpp清單如下:
#include<iostream.h>
#include<stdio.h>
classTable
{
(1)
intz;
public:
voidprint(intx,inty,intz);
};
voidTable::print(intx,inty,intz)
{
(2)
}
classTable9:publicTable
{
public:
voidprint();
};
voidTable9::print()
{
(3)
intx,y,z;
for(i=1;i<10;i++)
{
for(j=1;j<i+1;j++)
{
x=i;
y=j(luò);
z=i*j;
Table::print(y,x,z);
}
printf("\n");
}
}
main()
{
//**4]
●試題六
【說明】
下面是一個Applet程序,其功能是建立2個文本區(qū)域,一個為編輯區(qū),一個為只讀區(qū);建立2個按鈕,一個實(shí)現(xiàn)將編輯區(qū)中被鼠標(biāo)選定的文本內(nèi)容拷貝到只讀區(qū)中,一個實(shí)現(xiàn)將只讀區(qū)的全部文本內(nèi)容清空。
程序運(yùn)行結(jié)果如圖3所示。
圖3importjava.awt.*;
importjava.applet.*;
/*
<appletcode="ex3_6.class"width=800height=400>
</applet>
*/
publicclassex3_6extendsApplet{
privateButtonokBtn,clearBtn;
privateStringstrMessage;
privateTextAreatArea1,tArea2;
publicvoidinit(){
strMessage="Hello!Welcometothetest!\n"+"Wishyougoodluck!";
tArea1=newTextArea(10,25);
(1);
tArea2=newTextArea(10,25);
(2);
okBtn=newButton("Copy");
clearBtn=(3);
add(tArea1);
add(tArea2);
add(okBtn);
add(clearBtn);
}
publicbooleanaction(Evente,Objecto){
if(e.target==okBtn)
tArea2.setText(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人住房維修基金擔(dān)保責(zé)任協(xié)議4篇
- 2025年金融機(jī)構(gòu)間協(xié)議存款風(fēng)險管理合同3篇
- 二零二五版汽車分期付款及二手車交易及售后服務(wù)合同3篇
- 2025版學(xué)?;顒又行淖赓U合同范本2篇
- 2025版出租車司機(jī)職業(yè)操守?fù)?dān)保合同2篇
- 2025版?zhèn)€人車輛抵押債權(quán)債務(wù)處理執(zhí)行條款4篇
- 2025年長沙考貨運(yùn)從業(yè)資格證駕校
- 2025年綠色建筑項(xiàng)目施工連帶責(zé)任保證合同4篇
- 2025餐飲拆伙協(xié)議書退伙后品牌使用權(quán)及保密協(xié)議3篇
- 卸車事故緊急處理與賠償協(xié)議2025年度3篇
- 山東省桓臺第一中學(xué)2024-2025學(xué)年高一上學(xué)期期中考試物理試卷(拓展部)(無答案)
- 中華人民共和國保守國家秘密法實(shí)施條例培訓(xùn)課件
- 管道坡口技術(shù)培訓(xùn)
- 2024年全國統(tǒng)一高考英語試卷(新課標(biāo)Ⅰ卷)含答案
- 2024年認(rèn)證行業(yè)法律法規(guī)及認(rèn)證基礎(chǔ)知識 CCAA年度確認(rèn) 試題與答案
- 皮膚儲存新技術(shù)及臨床應(yīng)用
- 外研版七年級英語上冊《閱讀理解》專項(xiàng)練習(xí)題(含答案)
- 2024年遼寧石化職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫必考題
- 上海市復(fù)旦大學(xué)附中2024屆高考沖刺模擬數(shù)學(xué)試題含解析
- 幼兒園公開課:大班健康《國王生病了》課件
- 小學(xué)六年級說明文閱讀題與答案大全
評論
0/150
提交評論