国产18禁黄网站免费观看,99爱在线精品免费观看,粉嫩metart人体欣赏,99久久99精品久久久久久,6080亚洲人久久精品

2015軟考軟件設(shè)計(jì)師模擬試題及答案

時(shí)間:2015-09-09 13:47:00   來源:無憂考網(wǎng)     [字體: ]
21. 新軟件項(xiàng)目與過去成功開發(fā)過的一個項(xiàng)目類似,但規(guī)模更大,此時(shí)比較適合使用 (25) 進(jìn)行項(xiàng)目開發(fā)設(shè)計(jì)。

  (25) A.原型法

  B.變換模型

  C.瀑布模型

  D.螺旋模型

  參考答案:(25)C。

  解析:由于新項(xiàng)目與過去成功開發(fā)過的一個項(xiàng)目類似,已經(jīng)有了成功的項(xiàng)目開發(fā)經(jīng)驗(yàn)和積累的軟件模塊,因此,應(yīng)盡可能將這些經(jīng)驗(yàn)和軟件模塊應(yīng)用到新項(xiàng)目中,即對于這個規(guī)模更大的軟件項(xiàng)目應(yīng)該使用瀑布模型進(jìn)行開發(fā)。

  22.在下列代碼中,正確的C代碼是(26)

  (26) A. #defineMYNAME="ABC"

  B. #includestring.h

  C. for(i=0;i<10;i++);

  D. structintstu{intname};

  參考答案:(26) C。

  解析:A是關(guān)于宏定義的,在宏的定義形式中,宏名與字符列之間至少有一個空白符,并在宏名希望代表的字符序列之間也不能有任何非空格類字符,若有也被當(dāng)作是字符序列的一部分。有了宏定義,以后程序中若要有宏名后的字符序列就可簡寫成宏名。選擇①在宏名之后緊接字符=。B是關(guān)于包含命令的,在上述包含命令的格式中,被包含文件應(yīng)放在一對尖括號之間,或一對雙引號之間,不可在文件名字符列的首末沒有這種符號。C是for語句,for語句的循環(huán)體可以用空語句,從語言的句法規(guī)則來說,該語句是正確的。但通常循環(huán)是為了完成某種重復(fù)計(jì)算操作,單一地讓一個變量循環(huán)增1到某個值,程序員是不會編寫這種代碼的。D是想定義結(jié)構(gòu)類型,定義結(jié)構(gòu)時(shí),struct后接結(jié)構(gòu)類型名,不可在結(jié)構(gòu)名之前插入某些其它類型符。正確解答是C。

  23.在下列代碼中,正確的C代碼是(27)

  (27)A. #definePI=3.14159

  B. include"stdio.h"

  C. for(i=0,i<10,i++)a++;

  D. staticstruct{inti;}b={2};

  參考答案:D。

  解析:A定定義時(shí),宏名與被定義的字符列之間不可以插入等號等其它字符。選擇答案B是包含文件預(yù)處理,所有的預(yù)處理命令都應(yīng)由字符#開始于新的一行。C在寫for語句時(shí),其中的三個表達(dá)式必須用字符";"分隔。D在定義結(jié)構(gòu)變量時(shí),結(jié)構(gòu)的類型名可以省缺,并可為結(jié)構(gòu)變量賦初值。為結(jié)構(gòu)變量賦初值,必須順序給出各成分的初值,并將初值寫在一對花括號中。這里給出的結(jié)構(gòu)變量定義的代碼是正確的。正確解答是D。

  24.若與文件型指針中相關(guān)聯(lián)的文件的當(dāng)前讀位置已到了文件的末尾,則函數(shù)feof(fp)的返回值是(28)

  (28) A. 0

  B. -l

  C. 非零值

  D. NULL

  參考答案:(28) C。

  解析:當(dāng)調(diào)用fopen函數(shù)時(shí),系統(tǒng)將為實(shí)參文件設(shè)定一個存放文件讀寫控制信息的控制塊。該控制塊記錄有關(guān)文件持征、使用方式,當(dāng)前讀寫位置等文件狀態(tài),并將該控制塊的指針返回,作為文件指針變量的值。以后程序通過該指針調(diào)用函數(shù)時(shí),系統(tǒng)能訪問到這個控制塊,利用該文件控制塊中的控制信息,正確完成文件的讀或?qū)。所以文件指針并不真正指向文件?dāng)前讀寫位置,但通過文件指針,系統(tǒng)能在文件控制塊中訪問文件的當(dāng)前讀寫位置。若某文件與文件指針中相關(guān)聯(lián)著,該文件的當(dāng)前讀寫位置在文件的末尾時(shí),函數(shù)調(diào)用feof(fp)的返回值是一個非零值。所以正確解答是C。

  25.下列語句中,將C定義為文件型指針的是(29)

  (29)錒FILEc;②

  B. FILE*c;

  C. filec;

  D. file*c;

  參考答案:(29)B。

  解析:如上題所述,文件控制塊的類型已由系統(tǒng)命名為FILE。所以定義文件指針變量是C,就得用代碼:“FILE*c;”。所以正確解答是B。

  26. 以下標(biāo)準(zhǔn)代號中, (30) 不屬于國家標(biāo)準(zhǔn)代號。

  (30) A.GSB

  B.GB/Z

  C.GB/T

  D.GA/T

  參考答案:(30)D。

  解析:我國國家標(biāo)準(zhǔn)中,強(qiáng)制性國家標(biāo)準(zhǔn)代號為“GB”;推薦性國家標(biāo)準(zhǔn)代號為“GB/T”;“GB/Z”是我國國家標(biāo)準(zhǔn)化指導(dǎo)性技術(shù)文件的代號;“GSB”是我國國家實(shí)物標(biāo)準(zhǔn)代號;“GA/T”是公共安全推薦性標(biāo)準(zhǔn),它是我國公安部制定的行業(yè)標(biāo)準(zhǔn)。

  27.標(biāo)準(zhǔn)庫函數(shù)fputs(pl,p2)的功能是(31)

  (31) A. 從pl指向的文件中讀一個字符率存入p2指向的內(nèi)存

  B. 從p2指向的文件中讀一個字符串存入pl指向的內(nèi)存

  C. 從pl指向的內(nèi)存中的一個字符串輸出到p2指向的文件

  D. 從p2指向的內(nèi)存中的一個字符串輸出到pl指向的文件

  參考答案:(31) C。

  解析:標(biāo)準(zhǔn)函數(shù)調(diào)用fputs(p1,p2)完成的功能是將由字符指針pl所指的字符串內(nèi)容輸出到與文件指針p2相關(guān)聯(lián)的文件中,即將從pl所指的內(nèi)存中的字符串內(nèi)容輸出到p2所指向的文件中。所以正確解答是C。

  28. 頁式存儲管理當(dāng)中的頁面是由 (32) 所感知的。

  (32) A.用戶

  B.操作系統(tǒng)

  C.編譯系統(tǒng)

  D.鏈接程序

  參考答案:(32)B。

  解析:進(jìn)行存儲分配時(shí),頁式存儲管理為每個作業(yè)建立一張頁表,指出邏輯地址中頁號與主存中塊號的對應(yīng)關(guān)系。然后,借助于硬件的地址轉(zhuǎn)換機(jī)構(gòu),在作業(yè)執(zhí)行過程中按頁動態(tài)定位。每執(zhí)行一條指令時(shí),按邏輯地址中的頁號查頁表,得到對應(yīng)的塊號,根據(jù)關(guān)系式,絕對地址=塊號×塊長+單元號,計(jì)算出欲訪問的主存單元的地址。由此可知,頁面是由操作系統(tǒng)所感知的。

  29. 在一個單CPU的計(jì)算機(jī)系統(tǒng)中,有3臺不同的外部設(shè)備R1、R2和R3,以及3個進(jìn)程P1、P2和P3。系統(tǒng)CPU調(diào)度采用可剝奪式優(yōu)先級的進(jìn)程調(diào)度方案,3個進(jìn)程的優(yōu)先級、使用設(shè)備的先后順序和占用設(shè)備時(shí)間如表1所示。

  假設(shè)操作系統(tǒng)的開銷忽略不計(jì),從3個進(jìn)程同時(shí)投入運(yùn)行到全部完成,CPU的利用率約為 (33) %;R3的利用率約為 (34) %。其中,設(shè)備的利用率是指該設(shè)備的使用時(shí)間與進(jìn)程組全部完成所占用時(shí)間的比率。

  (33) A.66.7

  B.75

  C.83.3

  D.91.7

  (34) A.66

  B.50

  C.33

  D.17

  參考答案:(33)C;(34)B。

  解析:在多道系統(tǒng)中的3個任務(wù)(P1、P2和P3)是競爭使用CPU,但可并行使用I/O設(shè)備(R1、R2和R3)。各個任務(wù)運(yùn)行的分析過程如圖6所示。圖中水平粗實(shí)線表示某進(jìn)程實(shí)際執(zhí)行過程所占用的CPU或I/O設(shè)備的時(shí)間。

  對圖3分析如下。

  
  圖 3

  ① t0~t1時(shí)段(20ms):結(jié)合表3-2中3個進(jìn)程使用設(shè)備的先后順序,因此,進(jìn)程調(diào)度程序先選中進(jìn)程P3占用CPU的使用權(quán),進(jìn)程P1占用R1設(shè)備的使用權(quán),進(jìn)程P2占用R3設(shè)備的使用權(quán)。

 、 t1~t2時(shí)段(20ms):由于進(jìn)程的優(yōu)先級P1>P3且系統(tǒng)CPU調(diào)度采用可剝奪式優(yōu)先級的進(jìn)程調(diào)度方案,CPU使用權(quán)在這一進(jìn)段將轉(zhuǎn)讓給進(jìn)程P1,進(jìn)程P1占用CPU的使用權(quán)20 ms,進(jìn)程P2繼續(xù)占用R3設(shè)備20 ms,進(jìn)程P3因CPU使用權(quán)被剝奪而處于就緒狀態(tài)。

 、 t2~t3時(shí)段(20ms):進(jìn)程P1占用CPU使用權(quán)終止后,進(jìn)入占用R3設(shè)備的時(shí)段。由于進(jìn)程的優(yōu)先級P2>P3,進(jìn)程P2使用完R3設(shè)備后,進(jìn)入占用CPU的使用權(quán)時(shí)段。進(jìn)程P3仍處于就緒狀態(tài)。

 、 t3~t4時(shí)段(10ms):進(jìn)程P1在t3時(shí)刻運(yùn)行完畢。進(jìn)程P2繼續(xù)占用CPU的使用權(quán)。進(jìn)程P3仍處于就緒狀態(tài)。

  ⑤ t4~t5時(shí)段(10ms):進(jìn)程P2占用CPU使用權(quán)終止后,進(jìn)入占用R2設(shè)備的時(shí)段。進(jìn)程調(diào)度程序重新調(diào)度進(jìn)程P3占用CPU的使用權(quán)。

 、 t5~t6時(shí)段(10ms):進(jìn)程P3占用CPU使用權(quán)終止后,進(jìn)入占用R2設(shè)備的時(shí)段。由于I/O設(shè)備R2可被進(jìn)程并行使用,因此,進(jìn)程P2、P3在這一時(shí)段將并行占用R2設(shè)備。系統(tǒng)中也沒有其他待運(yùn)行的進(jìn)程,此時(shí)段CPU將處于空閑狀態(tài)。

 、 t6~t7時(shí)段(10ms):進(jìn)程P2在t6時(shí)刻運(yùn)行完畢。進(jìn)程P3繼續(xù)占用R2設(shè)備。此時(shí)段CPU仍處于空閑狀態(tài)。

  ⑧ t7~t8時(shí)段(20ms):進(jìn)程P3的I/O操作任務(wù)完成后,進(jìn)程調(diào)度程序?qū)PU使用權(quán)分配給它。進(jìn)程P3占用CPU 20ms后運(yùn)行完畢。

 

  30. 某磁盤的轉(zhuǎn)速為7 200轉(zhuǎn)/分,傳輸速度為4Mbps,控制器開銷為1ms。要保證讀或?qū)懸粋512字節(jié)的扇區(qū)的平均時(shí)間為11.3ms。那么,該磁盤的平均尋道時(shí)間應(yīng)不超過 (35) ms。
  (35) A.3.9
  B.4.7
  C.5.5
  D.6.1
  參考答案:(35)D。

  控制器開銷為1ms。要保證讀或?qū)懸粋512字節(jié)的扇區(qū)的平均時(shí)間為11.3ms,則該磁盤的平均尋道時(shí)間的值為 ,即不超過6.1 ms。
  31. 根據(jù)以下Redhat Linux操作系統(tǒng)的提示信息,將(36)空缺處的Apache服務(wù)操作命令填寫完整。
  httpd (pid 20014 20013 20012 20011 20010 20009 20008 20007 20004)正在運(yùn)行…
  (36) A.service httpd status
  B.httpd -k start
  C.httpd -k restart
  D.apachectl start
  參考答案:(36)A。
  解析:使用命令“service httpd start”啟動httpd進(jìn)程之后,再使用命令“service httpd status”可以查看Apache服務(wù)器的狀態(tài)信息。
  選項(xiàng)B的“httpd -k start”用于啟動Apache服務(wù),其等價(jià)于“service httpd start”或“apachectl start”。
  選項(xiàng)C的“httpd -k restart”用于重啟Apache,使其重新讀取配置文件,與其等價(jià)的命令有“service httpd restart”和“apachectl restart”。
  另外,使用命令“service httpd stop”可以終止Apache服務(wù),該命令的等價(jià)命令是“httpd -k stop”(或“apachectl stop”)。
  32. 在C語言中,設(shè)有數(shù)組定義:char array[]=“China”;則數(shù)組array所占用的空間為 (37) 。
  (37) A.5個字節(jié)
  B.6個字節(jié)
  C.10個字節(jié)
  D.12個字節(jié)
  參考答案:(37)B。
  httpd (pid 20014 20013 20012 20011 20010 20009 20008 20007 20004)正在運(yùn)行…
  (36) A.service httpd status
  B.httpd -k start
  C.httpd -k restart
  D.apachectl start
  參考答案:(36)A。
  解析:使用命令“service httpd start”啟動httpd進(jìn)程之后,再使用命令“service httpd status”可以查看Apache服務(wù)器的狀態(tài)信息。
  選項(xiàng)B的“httpd -k start”用于啟動Apache服務(wù),其等價(jià)于“service httpd start”或“apachectl start”。
  選項(xiàng)C的“httpd -k restart”用于重啟Apache,使其重新讀取配置文件,與其等價(jià)的命令有“service httpd restart”和“apachectl restart”。
  另外,使用命令“service httpd stop”可以終止Apache服務(wù),該命令的等價(jià)命令是“httpd -k stop”(或“apachectl stop”)。
  32. 在C語言中,設(shè)有數(shù)組定義:char array[]=“China”;則數(shù)組array所占用的空間為 (37) 。
  (37) A.5個字節(jié)
  B.6個字節(jié)
  C.10個字節(jié)
  D.12個字節(jié)
  參考答案:(37)B。
  解析:根據(jù)正規(guī)式r和s的意義,兩個正規(guī)式等價(jià)說明r和s代表的字符串集合相同,因此可用證明集合相等的方法判斷。另外,也可構(gòu)造出與每個正規(guī)式對應(yīng)的自動機(jī)進(jìn)行說明。但是這兩個方法實(shí)施起來都很煩瑣,一種比較簡便的方法是,根據(jù)正規(guī)式的含義及其代數(shù)性質(zhì)進(jìn)行判斷。
  由于題目中給出的正規(guī)式①、②和③的共同之處是以字符b結(jié)尾,因此只需考慮正規(guī)式“(aa*|ab)*”、“((a|b)* |aa)*”和“(a|b)*”之間的等價(jià)關(guān)系。從直觀的角度理解,正規(guī)式“(aa*|ab)*”表示的是包含空串 及a開頭的且每個b之后必然出現(xiàn)a的字符串的集合;而正規(guī)式“(a|b)*”表示包含空串 在內(nèi)的所有a和b構(gòu)成的字符串集合,并不限制b的出現(xiàn)方式;正規(guī)式“((a|b)* |aa)*”表示的字符串也不具有必須以a開頭的特點(diǎn)。因此,正規(guī)式①與②和正規(guī)式①與③的等價(jià)關(guān)系即可排除,即先排除選項(xiàng)A和B。
  由于“(a|b)*”已經(jīng)包括了含有“aa”子串的所有a和b字符串,因此,對于正規(guī)式“((a|b)* |aa)*”中的“aa”可省略,即正規(guī)式“((a|b)* |aa)*”與“(a|b)*”是等價(jià)的,故正確答案是選項(xiàng)C。

  34. 表達(dá)式 (39) 對應(yīng)的逆波蘭式是“ab+-c/d-”。

  (39) A.a-b-c/d

  B.-(a+b)/c-d

  C.-a+b/c-d

  D.(a+b)/(-c-d)

  參考答案:(39)B。

  解析:一個表達(dá)式可用一棵二叉樹表示,其中的葉子節(jié)點(diǎn)表示操作數(shù),內(nèi)部節(jié)點(diǎn)表示操作符或中間結(jié)果,根節(jié)點(diǎn)表示整個表達(dá)式的值。對此二叉樹分別進(jìn)行前序、中序和后序遍歷恰好為表達(dá)式的前綴表示(波蘭式)、中綴表示和后綴表示(逆波蘭式)。其中,表達(dá)式的前綴和后綴表示均可以將表達(dá)式中的括號省去而不影響計(jì)算次序和結(jié)果。

  表達(dá)式的逆波蘭表示也就是后綴表示,它將運(yùn)算符號寫在運(yùn)算對象的后面,并指明其前面的操作數(shù)或中間結(jié)果所要執(zhí)行的運(yùn)算。對后綴表達(dá)式從左到右求值,則每當(dāng)掃描到一個運(yùn)算符號時(shí),其操作數(shù)是最近剛得到的。因此“ab+-c/d-”表示先將a與b相加,然后進(jìn)行一元“-”運(yùn)算,結(jié)果除以c,除運(yùn)算的商再與d相減,即對應(yīng)的表達(dá)式為“-(a+b)/c-d”。

  35. 軟件開發(fā)工具VB、PB和Delphi是可視化的。這些工具是一種 (40) 程序語言。

  (40) A.邏輯式

  B.命令式

  C.函數(shù)式

  D.事件驅(qū)動

  參考答案:(40)D。

  解析:事件驅(qū)動(Event Driven)是指系統(tǒng)根據(jù)發(fā)生的事件發(fā)送消息給相應(yīng)的程序,程序根據(jù)事件和當(dāng)前狀態(tài),決定要做的事情。如果不發(fā)生事件,計(jì)算機(jī)的控制權(quán)并不是在正在執(zhí)行的程序手里,這時(shí)程序并不占用CPU資源。面向?qū)ο蠛涂梢暬绦蛟O(shè)計(jì)方法采用了事件驅(qū)動機(jī)制,所以程序設(shè)計(jì)方法發(fā)生了很大的改變。事件驅(qū)動給程序設(shè)計(jì)帶來了極大的靈活性。同時(shí),它可以在不采用分時(shí)系統(tǒng)的前提下實(shí)現(xiàn)多進(jìn)程。

  可視化程序設(shè)計(jì)(Visual Programming)運(yùn)用面向?qū)ο蟪绦蛟O(shè)計(jì)的概念,通過圖形化及可視途徑,構(gòu)建應(yīng)用程序。它使程序設(shè)計(jì)更為簡單和容易。軟件開發(fā)工具Visual Basic、PB和Delphi提供了可視化的集成開發(fā)環(huán)境,運(yùn)用代表通用于程序的圖標(biāo),通過圖形操作,構(gòu)建基于圖形用戶界面(GUI)的應(yīng)用程序,是一種以事件驅(qū)動的程序語言。

  36.在下列代碼中,錯誤的C代碼是(41)

  (41)A. #definePI3.14159

  B. #include"stdio.h";

  C. if(2);

  D. for(;;)if(1)break;

  參考答案:(41)B。

  解析:A是正確的宏定義。B的文件包含預(yù)處理命令行不可以有多余的分號字符。C是if語句,雖沒有任何意義,但就句法來說是正確的。D是for語句,其成分語句是if語句,從for語句來說,是一個無窮循環(huán)的控制結(jié)構(gòu),但它的成分語句因條件成立,執(zhí)行break語句,立即退出循環(huán)。同樣雖也是一條沒有任何意義的語句,但從句法規(guī)則來說,也是正確的。正確解答是B。

  37.設(shè)有以下定義,則執(zhí)行語句"z=2*(N+Y(5+1));"后,z的值為(42)

  #defineN3

  #defineY(n)((N+l)*n)

  (42)A. 出錯

  B. 42

  C. 48

  D. 54

  參考答案:(42)C。

  解析:在新的宏定義中,可以使用前面已定義的宏名。另外,宏調(diào)用是這樣被替換展開的,分別用宏調(diào)用中的實(shí)在參數(shù)字符序列替換定定義字符序列中對應(yīng)所有出現(xiàn)的形式參數(shù)。而宏定義字符序列中的不是形式參數(shù)的其他字符則保留。這樣形成的字符序列,即為宏調(diào)用的展開替換結(jié)果。所以代碼"z=2*(N+Y(5+1));"被替換成:

  z=2*(3+((3+1)*5+1));

  執(zhí)行該代碼,將使Z的值為48。解答為C。

  38. 當(dāng)使用數(shù)據(jù)流圖對一個工資系統(tǒng)進(jìn)行建模時(shí), (43) 可以被認(rèn)定為外部實(shí)體。

  (43) A.工資單

  B.工資系統(tǒng)源程序

  C.接收工資單的銀行

  D.工資數(shù)據(jù)庫

  參考答案:(43)C。

  解析:數(shù)據(jù)流程圖(Data Flow Diagam,DFD)也稱數(shù)據(jù)流圖,是一種便于用戶理解、分析系統(tǒng)數(shù)據(jù)流程和描述系統(tǒng)邏輯模型的圖形工具。它擺脫了系統(tǒng)的物理內(nèi)容,精確地在邏輯上描述系統(tǒng)的功能、輸入、輸出和數(shù)據(jù)存儲等,是系統(tǒng)邏輯模型的重要組成部分。

  DFD由數(shù)據(jù)流、加工、數(shù)據(jù)存儲和外部實(shí)體4個要素構(gòu)成。外部實(shí)體是指存在于軟件系統(tǒng)之外的人員或組織,它指出系統(tǒng)所需數(shù)據(jù)的發(fā)源地和系統(tǒng)所產(chǎn)生數(shù)據(jù)的歸宿點(diǎn)。當(dāng)使用DFD對一個工資系統(tǒng)進(jìn)行建模時(shí),接收工資單的銀行可以被認(rèn)定為是一個外部實(shí)體,而選項(xiàng)A、B和D的內(nèi)容都不符合外部實(shí)體的定義。

  39.以下程序中的for循環(huán)執(zhí)行的次數(shù)是(44)

  #include

  #defineN2

  #defineMN+1

  #defineNUM(M+l)*M/2

  main()

  {inti,n=0;

  for(i=l;i<=NUM;i++){n++;printf("%d",n);}

  printf(" ");

  }

  (44)A. 5

  B. 6

  C. 8

  D. 9

  參考答案:(44)C。

  解析:代碼NUM被替換成(2+1+1)*2+1/2,所以其值是8。所以程序中的臉循環(huán)執(zhí)行的次數(shù)是8次。正確解答是C。

  40.下列字符列中,不是用來表達(dá)轉(zhuǎn)義字符是(45)

  (45)A.\\

  B.\'

  C. 074

  D. \0

  參考答案:(45)C。

  解析:轉(zhuǎn)義字符有三種書寫形式:反斜社字符后接上某個規(guī)定的字符;反斜杠字符后接上13個八進(jìn)制數(shù)字符;反斜社字符和字符X之后接上1至2個十六進(jìn)制數(shù)字符。后兩種分別八進(jìn)制數(shù)和十六進(jìn)制數(shù)直接給出字符的ASCll代碼值。而074是八進(jìn)制整數(shù),不是轉(zhuǎn)義字.所以解答是C。