2023年程序員(軟考)通關必做300題及詳解_第1頁
2023年程序員(軟考)通關必做300題及詳解_第2頁
2023年程序員(軟考)通關必做300題及詳解_第3頁
2023年程序員(軟考)通關必做300題及詳解_第4頁
2023年程序員(軟考)通關必做300題及詳解_第5頁
已閱讀5頁,還剩178頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

PAGEPAGE12023年程序員(軟考)通關必做300題及詳解一、單選題1.在結構化設計方法中,概要設計階段的任務是給出系統的各個模塊,確定每個模塊的功能、接口(模塊間傳遞的數據)及調用關系,用模塊及對模塊的調用來構建軟件的體系結構,并采用結構圖進行描述。結構圖的基本成分有()。結構圖的形態特征中,(請作答此空)是指一層中最大的模塊個數。A、深度B、寬度C、扇出D、扇入答案:B解析:本題考查結構化設計方法的基礎知識。結構化程序設計方法中使用結構圖來描述軟件系統的體系結構,指出一個軟件系統由哪些模塊組成,以及模塊之間的調用關系。其基本成分有模塊、調用和數據。模塊是指具有一定功能并可以用模塊名調用的一組程序語句,是組成程序的基本單元,用矩形表示。模塊之間的調用關系用從一個模塊指向另一個模塊的箭頭表示,表示前者調用了后者。模塊之間還可以用帶注釋的短箭頭表示模塊調用過程中來回傳遞的信息,箭頭尾部帶空心圓表示傳遞的是數據,帶實心圓表示傳遞的是控制信息。結構圖有四種特征,其中:深度指結構圖控制的層次,即模塊的層數;寬度指一層中最大的模塊數;扇出指一個模塊的直接下屬模塊數i扇入指一個模塊的直接上屬模塊數。2.軟件著作權的客體是指()。A、公民、法人或其他組織B、計算機程序及算法C、計算機程序及有關文檔D、軟件著作權權利人答案:C解析:軟件著作權的客體是指著作權法保護的計算機軟件。軟件包括計算機軟件程序及其有關文檔。①計算機程序。計算機程序是指為了得到某種結果而可以由計算機等具有信息處理能力的裝置執行的代碼化指令序列,或可被自動轉換成代碼化指令序列的符號化指令序列或符號化語句序列。計算機程序通常包括源程序和目標程序。源程序是用計算機程序設計語言編寫的程序,需要翻譯成機器能直接識別和執行的目標程序,才能在計算機上運行并得出結果。它具有可操作性、間接應用性和技術性等特點。目標程序以二進制編碼形式表示,是計算機或具有信息處理能力的裝置能夠識別和執行的指令序列,能夠直接指揮和控制計算機的各部件(如存儲器、處理器和I/O設備等)執行各項操作,從而實現一定的功能。它具有不可讀性、不可修改性和面向機器性等特點。②計算機軟件文檔。計算機程序的文檔是指用自然語言或者形式化語言所編寫的文字資料和圖表,以用來描述程序的內容、組成、設計、功能、開發情況、測試結果及使用方法等。如程序設計說明書、流程圖、數據流圖和用戶手冊等。3.一項工程完工所需的最少時間等于某個()。A、AOE網中源點到匯點事件最多的路徑的長度B、AOE網中源點到匯點的最長路徑的長度C、AOE網中源點到匯點的最短路徑的長度D、AOE網中源點到匯點活動最多的路徑的長度答案:B解析:本題考查AOE網的知識。AOE網是用頂點表示活動,用邊表示活動間的優先關系的有向圖。在AOE網中,有些活動可以并行地進行,完成工程所需的最少時間是從開始點到完成點的最長路徑,即關鍵路徑。4.組成2M×9位的內存,可以使用()。A、1M×9位進行并聯B、1M×4位進行串聯C、2M×4位進行并聯D、2M×4位進行串聯答案:C解析:本題考查內存儲器的級聯。串聯是指將具有相同位的存儲器聯在一起形成具有更大容量的存儲器。并聯是指將具有相同容量的存儲器聯在一起形成能同時處理更多位的存儲器。從題目來看,組成2M×8位的內存可以用2M×4位進行并聯或1M×8位進行串聯。5.UNIX操作系統的shell不能完成()的功能。A、解釋并執行來自終端的命令B、解釋并執行shell腳本C、解釋并執行來自外存的命令D、執行系統功能調用答案:D解析:本題考查的是UNIX操作系統中shell的基本概念。shell是UNIX操作系統的外殼,是一個功能強大的命令處理器,它是用戶與操作系統交互的界面。它接受用戶輸入的命令,分析、解釋和執行該命令,并將結果顯示出來。由于shell發展的歷史問題,有兩種主流的UNIX操作系統,分別是BerkeleyUNIX和SystemVUNIX,因此在UNIX系統中也有多種風格的shell程序存在,最常見的有三種:1)Bourneshell:是現代UNIX系統中標準shell,通常會把它設置成系統默認的命令解釋程序,它的命令提示符是"$"。B-shell由AT&T貝爾實驗室S.R.Bourne1975年編寫,它的程序名為sh。2)Cshell:由加州伯克利分校的學生BillJoy開發,其程序名為csh(由于它的編程類似于C語言形式而得名),它的提示符是"%"。3)Komshell:是B-shell的一個擴展集,在B-shell中編寫的腳本程序無需修改即可在Komshell中運行,它的提示符是"$"。Komshell是在20世紀80年代由貝爾實驗室的DavidG.Koun開發的BourneShell的擴充版本。不同的shell程序雖然在使用方式和命令格式上有所差異,但是它們的功能是類似的,都可以完成用戶命令的解釋和執行,完成用戶環境的設置,完成shell程序的設計與執行。總的來說Cshell提供了某些比B-shell更高級的特性,包括歷史命令、別名機制和作業控制。CShell的控制結構和運算符與C程序語言十分相似。而Bourneshell是三個shell中最常用的,幾乎所有的UNIX操作系統都將B-Shell作為它們的標準配置。還有它比其他兩個shell要小,執行效率也高。Kornshell保留了B-shell的全部功能,并且吸取了Cshell的許多高級功能。綜上所述,本題的正確答案為D。6.用戶小王對某軟件的操作界面提出了以下四條改進意見,其中,()是不需要考慮的。A、輸入信用卡號時應該允許在其中插入空格B、顯示較長的說明信息時不要很快就消失C、輸入注冊信息時有些項應該允許留空D、切換選項卡時,應自動保存己修改的設置答案:D解析:本題考查軟件工程實踐的基礎知識(用戶界面設計)。從用戶的角度看,軟件的操作界面體現了軟件的功能和使用特性。操作界面的設計需要征求最終用戶的意見。用戶小王提的四條意見中,意見A是正確的。因為信用卡號比較長,輸入時最好分段,其間插入空格,容易檢查,不容易出錯。意見B也是正確的。有些軟件的提示信息或警告信息較長,如果只顯示了很短時間,用戶還沒有看完,就消失了,用戶就不明白、不滿意。意見C也是正確的,輸入注冊信息時有些項是必須填寫的,但有些項并不重要或者有些人無法填寫,這些項應該允許留空。一般軟件中,用"*"標記是必填項寫的注冊信息項。沒有該標記的項是可填可不填的。意見D不完全正確。軟件某方面的設置可能有多張選項卡,每張選項卡上可有多個選項。通常每張選項卡上都有"確認/取消"按鈕,是否保存用戶的選擇應由用戶自己決定。因為用戶的選擇往往需要反復思考,再三決策,不宜完全采用自動保存的做法。7.OSI(OpenSystemInterconnection)安全體系方案X.800將安全服務定義為通信開放系統協議層提供的服務,用來保證系統或數據傳輸有足夠的安全性。X.800定義了5類可選的安全服務。下列相關的選項中不屬于這5類安全服務的是()。A、數據保密性B、訪問控制C、認證D、數據壓縮答案:D解析:X.800定義了5類可選的安全服務,分別是認證、數據保密性、訪問控制、數據完整性和不可否認性。8.函數main()、test()的定義如下所示,調用函數test時,第一個參數采用傳值方式,第二個參數采用傳引用方式,main函數中"print(x,y)”執行后,輸出結果為()。A、1,5B、3,5C、7,5D、7,10答案:C解析:本題考察程序語言的基礎知識。過程(或函數)首部聲明的參數成為形式參數,簡稱形參;過程(或函數)調用時的參數稱為實際參數,簡稱實參。傳值調用以實參向形式參數傳遞相應類型的指,在這種方式下,形式參數不能向實際參數返回信息。引用調用將實際參數的地址傳遞給形式參數,使得形參的地址就是對應的實參的地址,因此改變形參的值會改變實參的值。在本題中,test(intx,inta)x=5,a=1,經過test函數運算后,x=6,a=7,而返回時,因為a為引用調用,因此其會改變x的值,使得main函數的x值變為7,而y的值不發生變化,仍為5。答案選C。9.在計算機系統中,構成虛擬存儲器()。A、只需要硬件B、只需要軟件C、不需要硬件和軟件D、既需要硬件也需要軟件答案:D解析:本題考查計算機系統基礎知識。如果一個作業的部分內容裝入主存便可開始啟動運行,其余部分暫時留在磁盤上,需要時再裝入主存。這樣就可以有效地利用主存空間。從用戶角度看,該系統所具有的主存容量將比實際主存容量大得多,這樣的存儲器稱為虛擬存儲器。虛擬存儲器是為了擴大主存容量而采用的一種設計方法,其容量是由計算機的地址結構決定的,實現虛擬存儲器既需要硬件,也需要軟件。10.欲知某主機是否可遠程登錄,可利用()進行檢測。A、端口掃描B、病毒查殺C、包過濾D、身份認證答案:A解析:本題考查網絡攻擊方式基礎知識。所謂端口掃描,就是利用Socket編程與目標主機的某些端口建立TCP連接、進行傳輸協議的驗證等,從而偵知目標主機的被掃描端口是否處于激活狀態、主機提供了哪些服務、提供的服務中是否含有某些缺陷等等。常用的掃描方式有TCPconnect()掃描、TCPSYN掃描、FCPFIN掃描、IP段掃描和FTP返回攻擊等。通過端口掃描能發現目標主機的某些內在弱點、查找目標主機的漏洞。通過端口掃描可實現發現一個主機或網絡的能力,發現主機上運行的服務,發現主機漏洞。病毒查殺是通過對特征代碼、校驗和、行為監測和軟件模擬等方法找出計算機中被病毒感染的文件。包過濾是通過在相應設備上設置一定的過濾規則,對通過該設備的數據包特征進行對比,根據過濾規則,對與規則相匹配的數據包采取實施放行或者丟棄的操作。通過包過濾,可防止非法數據包進入或者流出被保護網絡。身份認證也稱為"身份驗證"或"身份鑒別",是指在計算機及計算機網絡系統中確認操作者身份的過程,從而確定該用戶是否具有對某種資源的訪問和使用權限,進而使計算機和網絡系統的訪問策略能夠可靠、有效地執行,防止攻擊者假冒合法用戶獲得資源的訪問權限,保證系統和數據的安全,以及授權訪問者的合法利益。身份認證可以采取生物識別、密碼、認證證書等方式進行。通過以上的分析可知,要能夠獲知某主機是否能夠遠程登錄,只能采取端口掃描的方法,因此本題答案為A。11.某搜索引擎在使用過程中,若要增加接受語音輸入的功能,使得用戶可以通過語音輸入來進行搜索,此時應對系統進行()維護。A、正確性B、適應性C、完善性D、預防性答案:C解析:在搜索引擎中增加新的功能屬于完善性維護。完善性維護是在系統運行過程中,根據用戶要求,增加一些在系統分析和設計階段沒有規定的功能與性能特征,以及對處理效率和編寫程序的改進。12.在浮點表示法中,用階碼和尾數表示一個浮點數。階碼通常為()純整數,尾數為帶符號的純小數。A、不帶符號B、帶符號C、取絕對值D、不確定答案:B解析:浮點數由兩部分組成,第一部分是指數部分,表示小數點浮動的位置;第二部分是尾數部分,表示數的符號和有效位數。13.以下關于軟件文檔的敘述中,不正確的是()。A、撰寫規范的文檔有助于傳授經驗,降低風險B、開發過程文檔化的目標是易于據此重建項目C、由代碼生成文檔的全自動工具軟件現已成熟D、過時的文檔比沒有文檔更糟,會誤導使用者答案:C解析:本題考查軟件工程實踐的基礎知識(文檔撰寫)。撰寫規范的文檔,記錄開發過程和所用的技術,有助于記載并傳授經驗,便于自己整理總結提高,也有助于指導他人。撰寫規范的文檔后,即使開發過程中有人調走了,別人也能接得上,同時,也有利于檢查審核,找出問題的原因,有助于降低開發風險。開發過程文檔化的目標是易于據此重建項目。需要撰寫哪些文檔,寫到什么程度,這些都將由這個目標決定。由代碼生成文檔是非常復雜的,因為文檔非結構化,其中還包含了人文因素。一般只能半自動生成文檔的框架,再由專業人員具體仔細補充。半自動生成文檔框架有利于文檔的全面完整,不容易遺漏某些方面。因此,對復雜系統來說,不會存在全自動生成文檔的工具軟件。過時的文檔比沒有文檔更糟,許多功能已經刪除了或者已經調整了,有些操作方法發生了變化,處理問題的方法也可能變了,所以過時文檔會誤導使用者和開發者,造成維護的困難和問題。14.如果模塊A的三個處理都對同一數據結構操作,則模塊A的內聚類型是(49)。A、邏輯內聚B、時間內聚C、功能內聚D、通信內聚答案:D解析:本題考查軟件設計的基礎知識。模塊間的耦合和模塊的內聚是度量模塊獨立性的兩個準則。內聚是模塊功能強度的度量,即模塊內部各個元素彼此結合的緊密程度。一個模塊內部各個元素之間的緊密程度越高,則其內聚性越高,模塊獨立性越好。模塊內聚類型主要有以下幾類:①偶然內聚或巧合內聚:指一個模塊內的各處理元素之間沒有任何聯系。②邏輯內聚:指模塊內執行若千個邏輯上相似的功能,通過參數確定該模塊完成哪一個功能。③時間內聚:把需要同時執行的動作組合在一起形成的模塊。④過程內聚:指一個模塊完成多個任務,這些任務必須按指定的過程執行。⑤通信內聚:指模塊內的所有處理元素都在一個數據結構上操作,或者各處理使用相同的輸入數據或產生相同的輸出數據。⑥順序內聚:指一個模塊中的各個處理元素都密切相關于同一個功能且必須順序執行,前一個功能元素的輸出就是下一功能元素的輸入。⑦功能內聚:指模塊內的所有元素共同作用完成一個功能,缺一不可。15.在Excel中,單元格L3內容為“軟件工程技術”,若要取單元格L3前兩個字“軟件”放入單元格M3中,則在M3中可輸入(),并按下回車鍵即可。A、=LEFTB(M3,2)B、=LEFT(M3,2)C、=LEFTB(L3,2)D、=LEFT(L3,2)答案:D解析:LEFT函數:根據所指定的字符數,LEFT返回文本字符串中第一個字符或前幾個字符。LEFTB函數:LEFTB基于所指定的字節數返回文本字符串中的第一個或前幾個字符。根據兩個函數的區別,可以知道如果需要獲取L3的前兩個字,需要用“=LEFT(L3,2)”或者“=LEFTB(L3,4)”。一個漢字在計算機里面占用2個字節。16.標準化是一種活動過程,一般包括標準的產生、實施和()等階段。A、規范B、推廣C、更新D、總結答案:C解析:為了在一定的范圍內獲得最佳秩序,對實際的或潛在的問題制定共同的和重復使用的規則的活動,稱為標準化。它包括制定、推廣和實施、更新標準的過程。17.多態分為參數多態、包含多態、過載多態和強制多態四種不同形式,其中()多態在許多語言中都存在,最常見的例子就是子類型化。A、參數B、包含C、過載D、強制答案:B解析:多態分為兩種:通用的多態和特定的多態。兩者的區別是前者對工作的類型不加限制,允許對不同類型的值執行相同的代碼:后者只對有限數量的類型有效,而對不同類型的值可能要執行不同的代碼。通用的多態又分為參數多態(parametric)和包含多態(Inclusion);特定的多態分為過載多態(overloading)和強制多態(coercion)。強制多態:編譯程序通過語義操作,把操作對象的類型強行加以變換,以符合函數成操作符的要求。程序設計語言中基本類型的大多數操作符,在發生不同類型的數據進行混合運算時,編譯程序一般都進行強制多態。過載(overloading)多態:同一個名(操作符、函數名)在不同的上下文中有不同的類型,程序設計語言中基本類型的大多數操作符都是過載多態的。參數多態:采用參數化模板,通過給出不同的類型參數,使得一個結構有多種類型。包含多態:同樣的操作可用于一個類型及其子類型(注意是子類型,不是子類。)包含多態一般需要進行運行時的類型檢查。18.Apushoperationaddsanitemtothetopofa(73).A、queueB、treeC、stackD、datestructure答案:C解析:推動操作將項目添加到____頂部。A線性表B樹狀圖C棧D數據結構棧(stack)又名堆棧,它是一種運算受限的線性表。其限制是僅允許在表的一端進行插入和刪除運算。這一端被稱為棧頂,相對地,把另一端稱為棧底。向一個棧插入新元素又稱作進棧、入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素;從一個棧刪除元素又稱作出棧或退棧,它是把棧頂元素刪除掉,使其相鄰的元素成為新的棧頂元素。19.Windows系統的一些對話框中有多個選項卡,下圖所示的"鼠標屬性"對話框中()為當前選項卡。A、鼠標鍵B、指針C、滑輪D、硬件答案:C解析:在Windows系統的一些對話框中,選項分為兩個或多個選項卡,但一次只能查看一個選項卡或一組選項。當前選定的選項卡將顯示在其他選項卡的前面。顯然"滑輪"為當前選項卡。20.HTML中()用于定義文檔的標題。A、fontB、titleC、alignD、head答案:B解析:title用于HTML文檔的標題,title標簽是成對出現的,以<title>開始,以</title>結束。21.SLIP協議和PPP協議都是屬于()通信方式。A、端到端B、點對點C、同步D、異步答案:B解析:SLIP和PPP協議是串行線路上最常用的兩個鏈路通信協議,它們為在點到點鏈路上直接相連的兩個設備之間提供了一種傳送數據報的方法。22.()referstotherangeofputerhardwareandOSplatformsonwhichthesourcecodeofaprogramcanbepiledandrun.A、UsabilityB、PortabilityC、ReliabilityD、Maintainability答案:B解析:可移植性指的是計算機硬件和操作系統平臺的范圍,在這些平臺上都可以編譯和運行程序的源代碼。A可使用性B可移植性C可靠性D可維護性23.某醫院有科室關系D(科室號,科室名,負責人,聯系電話),其中:"科室號"唯一標識關系D中的每一個元組。住院部設有病人關系R(住院號,姓名,性別,科室號,家庭住址),其中,"住院號"唯一標識關系R中的每一個元組,"性別"的取值只能為M或F,要求科室號參照科室關系D中的科室號。創建R關系的sQL語句如下:CREATETABLER(住院號CHAR58(),姓名CHAR59,性別CHAR60(),科室號cHAR61(請作答此空),家庭住址CHAR62);A、PRIMARYKEYNOTNULLB、PRIMARYKEYUNIQUEC、FOREIGNKEYREFERENCESD(科室號)D、FOREIGNKEYREFERENCESD(科室名)答案:C解析:本題的正確答案是C。根據題意。屬性"科室號"是外鍵,因此需要用語句"REFERENCESD(科室號)"進行參考完整性約束。24.對于浮點數x=m*2i和y=w*2j,已知i>j,那么進行x+y運算時,首先應該對階,即(19),使其階碼相同。A、將尾數m左移(i-j)位B、將尾數m右移(i-j)位C、將尾數w左移(i-j)位D、將尾數w右移(i-j)位答案:D解析:對階的原則是小階對大階,采用補碼表示的尾數右移時,符號位保持不變。25.測試四個程序模塊共發現了42個錯,則()。A、至少有1個模塊至少有11個錯B、至少有1個模塊至少有12個錯C、至少有2個模塊都至少有11個錯D、至多有2個模塊都至多有14個錯答案:A解析:本題考查數學應用能力。若測試四個程序模塊后共發現了42個錯,則每個模塊的錯誤數有很多種可能。選項B是不對的,因為各個模塊的錯誤數有可能是11、11、10、10,各模塊的錯誤數都不超過11。選項C也是不對的,因為各個模塊的錯誤數有可能是12、10、10、10,只有1個模塊的錯誤數≥11。選項D也是不對的,因為各個模塊的錯誤數有可能是14,14,14,0,有三個模塊的錯誤數≥14。若選項A不對,則4個模塊都至多有10個錯,這樣,至多共有40個錯。26.若進程P1正在運行,操作系統強行撤下P1進程所占用的CPU,讓具有更高優先級的進程P2運行,這種調度方式稱為()。A、中斷方式B、搶占方式C、非搶占方式D、查詢方式答案:B解析:本題考查操作系統進程管理方面的基礎知識。在操作系統進程管理中,進程調度方式是指某進程正在運行,當有更高優先級的進程到來時如何分配CPU。調度方式分為可剝奪和不可剝奪兩種。可剝奪式是指當有更高優先級的進程到來時,強行將正在運行進程的CPU分配給高優先級的進程;不可剝奪式是指當有更高優先級的進程到來時,必須等待正在運行進程自動釋放占用的CPU,然后將CPU分配給高優先級的進程。27.編譯過程中使用()來記錄源程序中各個符號的必要信息,以輔助語義的正確性檢查和代碼生成。A、散列表B、符號表C、單鏈表D、決策表答案:B解析:本題考查程序語言處理基礎知識。編譯過程中符號表的作用是連接聲明與引用的橋梁,記住每個符號的相關信息,如作用域和綁定等,幫助編譯的各個階段正確有效地工作。符號表設計的基本設計目標是合理存放信息和快速準確查找。符號表可以用散列表或單鏈表來實現。28.下面說法正確的是()。A、解釋程序將源程序翻譯成目標語言程序,然后在計算機上運行目標程序。B、編譯程序直接解釋或翻譯成中間代碼。不生成獨立的目標程序。C、語法分析器檢查每條語句是否有正確的邏輯結構。D、語義分析階段分析表達式、賦值、循環、表達式的除數是否為零等。答案:C解析:編譯程序:將源程序翻譯成目標語言程序,然后在計算機上運行目標程序。解釋程序:直接解釋或翻譯成中間代碼。不生成獨立的目標程序。語法分析階段:語法分析器以單詞符號作為輸入,分析單詞符號是否形成符合語法規則的語法單位,如表達式、賦值、循環等,按語法規則分析檢查每條語句是否有正確的邏輯結構。語義分析階段:主要檢查源程序是否存在語義錯誤,并收集類型信息供后面的代碼生成階段使用,如:賦值語句的右端和左端的類型不匹配。表達式的除數是否為零等。29.正規式(ab|c)(0|1|2)表示的正規集合中有()個元素,(請作答此空)是該正規集中的元素。A、abc012B、a0C、c02D、c0答案:D解析:本題考查程序語言基礎知識。正規式(ab|c)表示的正規集為{ab,c},正規式(0|1|2)表示的正規集為{0,1,2},將{ab,c)與{0,1,2)進行連接運算后的正規集為{ab0,ab1,ab2,c0,c1,c2},因此該正規集有6個元素,c0屬于該集合。30.在存儲體系中,位于主存與CPU之間的高速緩存(Cache)用于存放主存中部分信息的副本,主存地址與Cache地址之間的轉換工作()。A、由系統軟件實現B、由硬件自動完成C、由應用軟件實現D、由用戶發出指令完成答案:B解析:主存地址與Cache地址之間的轉換工作是通過硬件來進行的。31.某C語言程序中,m是一個整型變量,則()時遇到表達式m+"test"會報錯。A、詞法分析B、語法分析C、語義分析D、程序運行答案:C解析:本題考查程序語言翻譯基礎知識。對源程序進行編譯的過程可以分為詞法分析、語法分析、語義分析、中間代碼生成和優化、目標代碼生成等階段。其中,詞法分析是分析各種構造形式的單詞,如整型常量、浮點常量、標識符、運算符等;語法分析是分析各種構造形式的表達式(算術表達式、關系表達式、邏輯表達式等)和語句(if語句、for語句、while語句等),詞法分析和語法分析都是對程序的結構進行分析。語義分析是指分析程序中各種語言成分的含義,如變量、表達式、語句等的含義,是對程序的靜態語義(編譯時能確定的語義)的分析。程序運行時體現程序的動態語義。32.某公司的程序員小王寫了一些提升編程能力的經驗,其中()并不恰當。A、只參加最適合提升自己技術能力的項目B、根據項目特點選擇合適的開發環境和工具,抓緊學習C、重視培養自己的溝通能力,包括撰寫文檔的能力D、參加網絡上的編程論壇,善于向高手學習答案:A解析:程序員也應配合公司需要參與到其他的項目。33.如果用戶對系統的目標不是很清楚,需求難以定義,這時最好使用()進行系統開發。A、原型法B、瀑布模型C、V-模型D、螺旋模型答案:A解析:應用原型法的主要目的就是獲取需求。使用原型法,在用戶的共同參與下可以改善和加快需求獲取過程。34.在Excel中,若在單元格A6中輸入“Sheet1!D5+Sheet2!B4:D4+Sheet3!A2:G2”,則該公式(4)。A、共引用了2張工作表的5個單元格的數據B、共引用了2張工作表的11個單元格的數據C、共引用了3張工作表的5個單元格的數據D、共引用了3張工作表的11個單元格的數據答案:D解析:Excel有四類運算符,分別是算術運算、比較運算、文本運算和引用運算。其中,最常見的兩種引用運算符是引用運算符冒號“:”表示多個連續的單元格,引用運算符逗號“,”表示多個不連續的單元格,但這種引用只能在同一個工作表中進行單元格的引用,而不可以引用其他工作表中的單元格。如果要在當前單元格中引用其他工作表中的單元格,就必須在引用單元格地址前面加上它所在工作表的名稱,并用嘆號“!”分隔,其格式為:工作表名!單元格區域。但無論單元格屬于哪張表,其單元格數目不變。35.通過()關系運算,可以從表1和表2獲得表3;表3的主鍵為(請作答此空)。A、課程號B、課程名C、課程號、課程名D、課程號、學生號答案:D解析:本題考查數據庫關系運算方面的基礎知識。自然連接是一種特殊的等值連接,它要求兩個關系中進行比較的分量必須是相同的屬性組,并且在結果集中將重復屬性列去掉。一般連接是從關系的水平方向運算,而自然連接不僅要從關系的水平方向,還要從關系的垂直方向運算。因為自然連接要去掉重復屬性,如果沒有重復屬性,那么自然連接就轉化為笛卡兒積。題中表1和表2具有相同的屬性課程號,進行等值連接后,去掉重復屬性列得到表3。若關系中的某一屬性或屬性組的值能唯一的標識一個元組,則稱該屬性或屬性組為主鍵。從表3可見"課程號、學生號"才能唯一決定表中的每一行,因此"課程號、學生號"是表3的主鍵。36.若關鍵碼序列(23,35,14,49,8,12,30,7)采用散列法進行存儲和查找。設散列函數為H(Key)=Key%11,采用線性探查法(順序地探查可用存儲單元)解決沖突,尚未構造完成的散列表如下所示,則元素12應存入哈希地址單元()。A、0B、4C、11D、12答案:B解析:本題考查數據結構基礎知識。根據構造哈希表的方式,先由哈希函數計算12在哈希表中的存儲位置為1(12%11),此時因1號單元被23占用而發生沖突,線性探查法解決沖突的方式是順序地探查2號單元,仍然沖突,再探查3號單元,繼續沖突,再探查4號單元,不再沖突,從而在經過4次探查后把12存入空閑的4號單元。37.通用的高級程序語言一般都會提供描述數據、運算、控制和數據傳輸的語言成分,其中,控制成分中有順序、()、循環結構。A、選擇B、遞歸C、遞推D、函數答案:A解析:本題考查程序語言基礎知識。程序語言的控制成分提供運算的控制邏輯,已經證明程序的控制結構可分為順序、選擇(或分支)和循環結構三種。38.通常企業在信息化建設時需要投入大量的資金,成本支出項目多且數額大。在企業信息化建設的成本支出項目中,系統切換費用屬于()。A、設施費用B、設備購置費用C、開發費用D、系統運行維護費用答案:D解析:信息化建設過程中,隨著技術的發展,原有的信息系統不斷被功能更強大的新系統所取代,所以需要系統轉換。系統轉換,也就是系統切換與運行,是指以新系統替換舊系統的過程。系統成本分為固定成本和運行成本。其中設備購置費用、設施費用、軟件開發費用屬于固定成本,為購置長期使用的資產而發生的成本。而系統切換費用屬于系統運行維護費用。39.工作在UDP協議之上的協議是()。A、HTTPB、TelnetC、SNMPD、SMTP答案:C解析:本題考查TCP/IP協議簇中應用層協議及其采用的傳輸層協議。HTTP、Telnet、SMTP傳輸層均采用TCP,SNMP傳輸層采用SNMP。40.Windows系統中定義了一些用戶組,擁有完全訪問權的用戶組是(66)。A、PowerUsersB、UsersC、AdministratorsD、Guests答案:C解析:本題考查Windows系統的基礎知識。Windows系統中定義了些用戶組,不同的用戶組具有不同的權限,其中擁有完全訪問權的用戶組是Administrators。41.某非確定的有限自動機(NFA)的狀態轉換圖如下圖所示(q0既是初態也是終態)。以下關于該NFA的敘述中,正確的是()。A、其可識別的0、1序列的長度為偶數B、其可識別的0、1序列中0與1的個數相同C、其可識別的非空0、1序列中開頭和結尾字符都是0D、其可識別的非空0、1序列中結尾字符是1答案:D解析:本題考查程序語言基礎知識。若存在一條從初態到某一終止狀態的路徑,且這條路徑上所有弧的標記符連接成的字符串等于ω,則稱ω可由NFA識別(接受或讀出)。對于題中給出的NFA,其初態為q0,q0上的自回路表示識別零個或多個1,接下來識別出一個0時進入狀態q1,q1上的自回路表示識別零個或多個0,接下來識別出1個1之后再回到q0。例如,該自動機可識別空串(因為q0既是初態,也是終態)、01、00001、101、1、11、111、1111等。01的識別路徑為q0→q1→q000001的識別路徑為q0→q1→q1→q1→q1→q0101的識別路徑為q0→q0→q1→q01的識別路徑為q0→q011的識別路徑為q0→q0→q0111的識別路徑為q0→q0→q0→q01111的識別路徑為q0→q0→q0→q0→q0識別字符串時必須從初始狀態q0出發,并回到狀態q[0],因此對于僅由1構成的任意長度的串,在識別過程中不會離開q0。當識別出一個0而離開q0后就進入q1,此后的字符若全部為0,則會一直在q1,直到識別出一個1而回到q0,因此除了空串,該NFA識別的字符串必須以1結尾。42.()productsoftenfeaturegameswithlearningembeddedintothem.A.ProgramA、DatabaseB、SoftwareC、MultimediD、答案:D解析:多媒體產品通常會嵌入學習以使得游戲具有特色。43.在HTML文件中,()標記在頁面中顯示work為斜體字。A、<pre>work</pre>B、<u>work</u>C、<i>work</i>D、<b>work</b>答案:C解析:本題考查HTML的基礎知識。在HTML中,<u></u>標記定義在頁面中顯示文字為帶下劃線樣式,<i></i>標記定義在頁面中顯示文字為斜體字樣式,<b></b>標記定義在頁面中顯示文字為加粗樣式。<pre></pre>標記的作用是可定義預格式化的文本。被包圍在pre標記中的文本通常會保留空格和換行符,而文本也會呈現為等寬字體。44.在Excel中,若在A1單元格輸入如下圖所示的內容,則A1的值為()。A、7B、8C、TRUED、#NAME?答案:B解析:本題考查Excel的公式和函數。在EXCEL里,邏輯值結果為True的時候在進行運算會轉化為1,如果是False會轉化為0。SUM函數是進行求和,所以這里的答案是=3+4+1=8。45.某數據庫系統中,假設有部門關系:Dept(部門號,部門名,負責人,電話),其中,"部門號"是該關系的主鍵;員工關系Emp(員工號,姓名,部門,家庭住址),屬性"家庭住址"包含省、市、街道以及門牌號,該屬性是一個(請作答此空)屬性。創建Emp關系的SQL語句如下:CREATETABLEEmp(員工號CHAR59(),姓名CHAR60,部門CHAR59,家庭住址CHAR62,());為在員工關系Emp中增加一個"工資"字段,其數據類型為數字型并保留2位小數,可采用的SQL語句為()。A、簡單B、復合C、多值D、派生答案:B解析:本題考查關系數據庫方面的基礎知識。本題正確的選項為B。因為復合屬性可以細分為更小的部分(即劃分為別的屬性)。有時用戶希望訪問整個屬性,有時希望訪問屬性的某個成分,那么在模式設計時可采用復合屬性。根據題意"家庭住址"可以進一步分為郵編、省、市、街道以及門牌號,所以該屬性是復合屬性。46.在面向對象的系統中,對象是運行時的基本實體,對象之間通過傳遞(請作答此空)進行通信。()是對對象的抽象,對象是其具體實例。A、對象B、封裝C、類D、消息答案:D解析:對象與對象之間是通過消息進行通信的。47.假設Excel工作表的部分信息如下所示,如果用戶在A3單元格中輸入=SUM(MAX(A1:D1),MIN(A2:D2)),則A3單元格中的值為()。A、27B、39C、40D、49答案:B解析:本題考查Excel基礎知識。SUM函數是求和,MAX函數是求最大值,MIN函數是求最小值,所以=SUM(MAX(A1:D1),MIN(A2:D2))的含義是求單元格區域A1:D1中的最大值28和單元格區域A2:D2中的最小值11之和,結果應為39。48.給定關系模式R<U,F>;其中U為屬性集,F是U上的一組函數依賴,那么Armstroog公理系統的增廣律是指()。A、若X→Y,X→Z,則X→YZ為F所蘊涵B、若X→Y,WY→Z,則XW→Z為F所蘊涵C、若X→Y,Y→Z為F所蘊涵,則X→Z為F所蘊涵D、若X→Y,為F所蘊涵,且Z?U,則入XZ→YZ為F所蘊涵答案:D解析:從已知的一些函數依賴,可以推導出另外一些函數依賴,這就需要一系列推理規則。函數依賴的推理規則最早出現在1974年W.W.Armstrong的論文里,這些規則常被稱作“Armstrong公理”設U是關系模式R的屬性集,F是R上成立的只涉及U中屬性的函數依賴集。函數依賴的推理規則有以下三條:自反律:若屬性集Y包含于屬性集X,屬性集X包含于U,則X→Y在R上成立。(此處X→Y是平凡函數依賴)增廣律:若X→Y在R上成立,且屬性集Z包含于屬性集U,則XZ→YZ在R上成立。傳遞律:若X→Y和Y→Z在R上成立,則X→Z在R上成立。其他的所有函數依賴的推理規則可以使用這三條規則推導出。49.數據庫的安全機制中,采用GRANT語句實現的是()。A、加密B、許可證C、用戶授權D、回收權限答案:C解析:在數據庫中,GRANT是授予對數據庫的權限。50.以下關于軟件測試的敘述中,不正確的是(53)。A、社會對軟件的依賴和對軟件質量要求的提高是軟件測試行業發展的基礎B、系統建設的出資方應提供測試方案C、對軟件質量的定性判斷需要測試提供的定量數據支撐D、測試團隊與開發團隊的共同目標是改善軟件質量答案:B解析:本題考查軟件工程基礎知識。現在,社會對軟件的依賴程度提高了,對軟件的質量要求也隨之提高,因此,對軟件測試的要求也提高,這是軟件測試行業發展的基礎。對軟件質量的定性判斷需要由數據說話,需要有測試提供的定量數據支撐。測試團隊與開發團隊并不是對立的,改善軟件質量是其共同的目標。軟件測試方案應由軟件開發設計者提出并實施。系統建設的出資方只能提出宏觀的質量要求,并不會詳細了解設計細節,不應由他們提出測試方案。51.下列哪一層是OSI模型中最靠近用戶的一層()。A、會話層B、物理層C、表示層D、應用層答案:D解析:本題考查OSI模型中分層及各層的作用。OSI模型中各層的作用及應用到的協議如下表所示。由上表可以看出,應用層是用戶的接口,而其他層是為網絡服務的,位于應用層之下,因此離用戶最近的一層是應用層。52.在某C/C++程序中,整型變量a的值為0且應用在表達式"c=b/a"中,則最可能發生的情形是()。A、編譯時報告有語法錯誤B、編譯時報告有邏輯錯誤C、運行時報告有語法錯誤D、運行時產生異常答案:D解析:編譯時a的值無法確定,表達式"c=b/a"符合C/C++語言的語法邏輯,編譯時不會報錯。運行時,代入a的值,發生錯誤。53.在CPU中,()的主要功能是在控制器的控制下完成各種算術運算和邏輯運算。(請作答此空)為ALU提供一個工作區,用來暫存數據。()存儲下一條要執行指令的地址。A、運算器B、累加寄存器C、程序計數器D、地址寄存器答案:B解析:運算器。運算器也稱為算術邏輯單元(ArithmeticandLogicUnit,ALU),其主要功能是在控制器的控制下完成各種算術運算和邏輯運算。累加寄存器AC:通用寄存器,為ALU提供一個工作區,用在暫存數據;程序計數器PC:存儲下一條要執行指令的地址地址寄存器AR:用來保存當前CPU所訪問的內存單元的地址。54.結構型設計模式涉及如何組合類和對象以獲得更大的結構,分為結構型類模式和結構型對象模式。其中,結構型類模式采用繼承機制來組合接口或實現,而結構型對象模式描述了如何對一些對象進行組合,從而實現新功能的一些方法。以下(48)模式是結構型對象模式。A、中介者(Mediator)B、構建器(Builder)C、解釋器(Interpreter)D、組合(posite)答案:D解析:結構型模式是描述如何將類對象結合在一起,形成一個更大的結構,結構模式描述兩種不同的東西:類與類的實例。故可以分為類結構模式和對象結構模式。在GoF設計模式中,結構型模式有:1.適配器模式Adapter2.橋接模式Bridge3.組合模式posite4.裝飾模式Decorator5.外觀模式Facade6.享元模式Flyweight7.代理模式Proxy55.()是一種客戶端腳本語言,它采用解釋方式在計算機上執行。A、PythonB、JavaC、PHPD、JavaScript答案:D解析:JavaScript一種直譯式腳本語言,是一種動態類型、弱類型、基于原型的語言,內置支持類型。它的解釋器被稱為JavaScript引擎,為瀏覽器的一部分,廣泛用于客戶端的腳本語言,最早是在HTML(標準通用標記語言下的一個應用)網頁上使用,用來給HTML網頁增加動態功能。56.動態主機配置協議(DHCP)的作用是();DHCP客戶機如果收不到服務器分配的IP地址,則會獲得一個自動專用的IP地址(APIPA),如169.254.0.X。A、為客戶機分配一個永久的IP地址B、為客戶機分配一個暫時的IP地址C、檢測客戶機地址是否沖突D、建立IP地址與MAC地址的對應關系答案:B解析:本題考察網絡基礎知識。DHCP(DynamicHostConfigurationProtocol,動態主機配置協議)通常被應用在大型的局域網絡環境中,主要作用是集中的管理、分配IP地址,使網絡環境中的主機動態的獲得IP地址、Gateway地址、DNS服務器地址等信息,并能夠提升地址的使用率。本題中客戶機獲取了一個169.254.0.X的地址說明:客戶端是動態從DHCP服務器上來獲取IP地址失敗后出現的一種情況。所以結合題干的意思來看本題應選擇B57.在設計白盒測試用例時,()是最弱的邏輯覆蓋。在下圖所示流程中,至少需要(請作答此空)個測試用例才可以實現路徑覆蓋。A、1B、2C、3D、4答案:C解析:主要的軟件測試方法有:(1)語句覆蓋。被測程序的每個語句至少執行一次。是一種很弱的覆蓋標準。(2)判定覆蓋。也稱為分支覆蓋,判定表達式至少獲得一次“真”、“假”值。判定覆蓋比語句覆蓋強。(3)條件覆蓋。每個邏輯條件的各種可能的值都滿足一次。(4)路徑覆蓋。覆蓋所有可能的路徑。(5)判定/條件覆蓋。每個條件所有可能的值(真/假)至少出現一次。(6)條件組合覆蓋。每個條件的各種可能值的組合都至少出現一次。滿足路徑覆蓋,只要覆蓋所有可能的路徑,總共是3條路徑,所以需要用3個測試用例即可。58.某商場的部門和商品兩個實體之間的關系如下圖所示。假設每個部門負責銷售若干種商品,每種商品只能由一個部門負責銷售,那么部門和商品之間存在著()的聯系。A、一對一B、一對多C、多對多D、一對多對多答案:B解析:根據題干描述顯然選擇B。59.假設磁盤塊與緩沖區大小相同,每個盤塊讀入緩沖區的時間為16us,由緩沖區送至用戶區的時間是5us,在用戶區內系統對每塊數據的處理時間為1us.若用戶需要將大小為10個磁盤塊的Doc1文件逐塊從磁盤讀入緩沖區,并送至用戶區進行處理,那么采用單緩沖區需要花費的時間為()us:采用雙緩沖區需要花費的時間為,(請作答此空)us.A、160B、161C、166D、211答案:C解析:這是一個簡單的緩沖區的問題。由于緩沖區的訪問是互斥的,所以對單一緩沖區,從磁盤寫入和讀出到用戶區的操作必須串行執行,也就是要保證互斥操作。而CPU對數據的分析與從用戶區讀數據也是需要互斥操作,但是CPU分析與從磁盤寫入緩沖區的操作可以并行。從本題看,由于分析所用的時間小于從磁盤寫入緩沖區的時間,因此,CPU會空閑。單緩沖區的總時間=(磁盤寫入緩沖區時間+緩沖區讀出時間)×10+CPU處理最后一塊數據的時間=(16+5)×10+1=211μs。當采用雙緩沖區時,每塊緩沖區的操作也必須滿足互斥操作,但是,對兩塊緩沖區的操作卻可以并行,所以,當第一個緩沖區寫滿以后,磁盤緊接著寫另一個緩沖區,同時,前一個已經滿了的緩沖區被讀出到用戶區,并立即進行CPU的數據分析。讀出操作和數據分析必須互斥進行,故,從時間上看,當數據被讀出并分析后,恰好另一個緩沖區也寫滿了,可以立即進行讀出數據到用戶區并進行數據分析。兩塊緩沖區交替進行讀寫,直到數據分析完畢,因此,總時間=(磁盤寫入緩沖區時間)×10+讀出最后一塊數據時間+CPU分析最后一塊數據時間=(16)×10+5+1=166s。60.在采用面向對象開發方法開發交通系統時,若將"汽車"與"交通工具"分別設計為類,則最適合描述"汽車"與"交通工具"之間的關系為()。A、繼承B、封裝C、多態D、重載答案:A解析:本題考查面向對象的基礎知識。繼承是父類和子類之間共享數據和方法的機制。這是類之間的一種關系,在定義和實現一個類的時候,可以在一個已經存在的類的基礎上來進行,把這個已經存在的類所定義的內容作為自己的內容,并加入若干新的內容,即子類比父類更加具體化。封裝是一種信息隱蔽技術,其主要目的是將對象的使用者和生產者分離,是對象的定義和實現分開。多態(polymorphism)是不同的對象收到同一消息可以進行不同的響應,產生完全不同的結果,用戶可以發送一個通用的消息,而實現細節則由接收對象自行決定,使得同一個消息就可以調用不同的方法,即一個對象具有多種形態。重載是一個名稱多個含義,即同一個方法名稱,帶有不同的參數個數或類型。交通工具是泛指各類交通工具,而汽車是一種交通工具,且具有自己的特性。因此,繼承關系最適合表達這些類的設計,在繼承交通工具的基礎上,設計汽車類,添加自己特有的行為,設計出子類。61.某軟件項目的活動圖如下圖所示,其中頂點表示項目里程碑,連接頂點的邊表示包含的活動,邊上的數字表示活動的持續時間(天),則完成該項目的最少時間為()天。活動BD最多可以晚開始(請作答此空)天而不會影響整個項目的進度。A、0B、2C、3D、5答案:A解析:先找出關鍵路徑為:ABDGIKL,其長度為22,所以最短工期22天。BD是關鍵路徑上的活動,其總時差為0,不能耽擱,所以BD最多延誤0天不會影響總工期。62.關于進程的說法錯誤的是A.進程是進行資源分配和調度的基本單位。A、進程通常由程序、數據集合、進程控制塊FCB、組成。C、進程控制塊記錄了操作系統所需的、用于描述進程的當前狀態和控制進程的全部信息。D、操作系統就是根據進程的進程控制塊來感知進程的存在。答案:B63.某營銷公司員工績效考核系統,對不同崗位的員工績效考核指標不同,例如:一級銷售員月銷售額不得低于200萬元,二級銷售員月銷售額不得低于100萬元,三級銷售員月銷售額不得低于50萬元。對于這種情況在系統實現時可以通過()進行約束。A、實體完整性B、參照完整性C、主鍵完整性D、用戶定義完整性答案:D解析:本題考查對數據庫完整性約束方面的基礎知識。數據庫完整性(DatabaseIntegrity)是指數據庫中數據的正確性和相容性。數據庫完整性由各種各樣的完整性約束來保證,因此可以說數據庫完整性設計就是數據庫完整性約束的設計。數據庫完整性約束包括實體完整性、參照完整性和用戶定義完整性。實體完整性(EntityIntegrity)指表中行的完整性。主要用于保證操作的數據(記錄)非空、唯一且不重復。即實體完整性要求每個關系(表)有且僅有一個主鍵,每一個主鍵值必須唯一,而且不允許為"空"(NULL)或重復。參照完整性(ReferentialIntegrity)屬于表間規則。在關系數據庫中,關系之間的聯系是通過公共屬性實現的。這個公共屬性經常是一個表的主鍵,同時是另一個表的外鍵。參照完整性體現在兩個方面:實現了表與表之間的聯系,外鍵的取值必須是另一個表的主鍵的有效值,或是"空"值。參照完整性規則要求:若屬性組F是關系模式R1的主鍵,同時F也是關系模式R2的外鍵,則在R2的關系中,F的取值只允許兩種可能:空值或等于R1關系中某個主鍵值。用戶定義完整性(User-definedIntegrity)也稱域完整性規則,是對數據表中字段屬性的約束,包括字段的值域、字段的類型和字段的有效規則(如小數位數)等約束,是由確定關系結構時所定義的字段的屬性決定的。例如,百分制成績的取值范圍在0~100之間;性別取值為"男"或"女"等。64.()isalistofitemsthatareaccessibleatonlyoneendofthelist.A、AtreeB、AnarrayC、AstackD、Aqueue答案:C解析:棧是只能在表的一端存取元素的表。65.在Pandas中我們可以設定某一列為特定的索引列,如我們希望把id這一列設置為索引列,那么可以用以下哪種代碼實現。A、df.set_index(‘id’)B、df.set(‘id’)C、df.load_index(‘id’)D、df.get_index(‘id’)答案:A66.Teamsarerequiredformostengineeringprojects.Althoughsomesmallhardwareorsoftwareproductscanbedevelopedbyindividuals,thescaleandplexityofmodemsystemsissuch,andthedemandforshortschedulessogreat,thatitisnolonger(請作答此空)foronepersontodomostengineeringjobs.Systemsdevelopmentisateam(),andtheeffectivenessoftheteamlargelydeterminesthe()oftheengineering.Developmentteamsoftenbehavemuchlikebaseballorbasketballteams.Eventhoughtheymayhavemultiplespecialties,allthemembersworktoward().However,onsystemsmaintenanceandenhancementteams,theengineersoftenworkrelativelyindependently,muchlikewrestlingandtrackteams.Ateamis()justagroupofpeoplewhohappentoworktogether.Teamworktakespracticeanditinvolvesspecialskills.Teamsrequiremonprocesses;theyneedagreed-upongoals;andtheyneedeffectiveguidanceandleadership.Themethodsforguidingandleadingsuchteamsarewellknown,buttheyarenotobvious.A、convenientB、existingC、practicalD、real答案:C解析:大多數軟件工程項目都是需要由項目團隊完成的,雖然小的簡單的軟硬件系統個人就能完成,但是對于大型復雜系統并且需要詳細計劃的項目由個人完成并不(請作答此空)。系統開發是團隊(),團隊工作的效率很大程度上決定了軟件工程的()。開發團隊的合作與籃球或棒球運動員之間的合作很相像,盡管每個人都有自己擅長的技術,但是大家是向著()目標而努力的。項目團隊()一群碰巧工作在一起的人,團隊工作需要一群人互相配合,齊心協力向著一個目標奮斗,并且這群人也需要一個好的領導來帶領他們。A.方便的B.現存的C.實際的D.真實的67.Theoperationofremovinganelementfromthestackissaidto()thestack.A、popB、pushC、storeD、fetch答案:A解析:從棧中刪除一個元素的操作可以稱為從棧中取出來。棧(stack)又名堆棧,它是一種運算受限的線性表。其限制是僅允許在表的一端進行插入和刪除運算。這一端被稱為棧頂,相對地,把另一端稱為棧底。向一個棧插入新元素又稱作進棧、入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素;從一個棧刪除元素又稱作出棧或退棧,它是把棧頂元素刪除掉,使其相鄰的元素成為新的棧頂元素。popstack表示出棧。68.以下關于程序員職業素養的敘述中,不正確的是()。A、面對程序中出現的問題,采用的解決方式和反思的深度體現程序員的素養B、職業素養強調的不是天賦的神秘和技藝的高超,而是持續積淀的結晶C、職業素養高的程序員會對經理為了趕工期而降低程序質量的要求說"不"D、職業素養高的程序員對用戶提出的任何需求變更和功能調整說"是"答案:D解析:本題考查軟件工程基礎知識。用戶的需求中可能會有一些無理的需求、非專業的需求、目前還實現不了的需求、重復的需求、會造成不良后果的需求等。需要分析系統維護時用戶提出的修改意見,不能立即進行修改,還需要分析討論,經批準后才能執行修改,否則可能會引發意想不到的問題。69.計算機內數據采用二進制表示是因為二進制數()。A、最精確B、最容易理解C、最便于硬件實現D、運算最快答案:C解析:計算機內數據采用二進制表示是因為二進制數用電路實現比較簡單。70.IT企業對專業程序員的素質要求中,不包括()。A、能千方百計縮短程序提高運行效率B、與企業文化高度契合C、參與軟件項目開發并解決所遇到的問題D、誠信、聰明、肯干答案:A解析:本題考察程序員的能力要求。千方百計縮短程序是沒有必要的,關鍵是程序運行正常,沒有錯誤,其次才是性能要求。71.使用獨立測試團隊的最主要原因是()。A、有利于項目人員分工B、減少相關人員之間的矛盾C、可以更徹底地進行軟件測試D、只有測試人員最熟悉測試方法和工具答案:C解析:本題考查軟件測試的基礎知識。在軟件測試階段,獨立的測試小組沒有進行設計和實現工作,往往可以更徹底地進行軟件測試,這也是最主要的目標。72.編譯和解釋是實現高級語言翻譯的兩種基本方式,相對應的程序分別稱為編譯器和解釋器。與編譯器相比,解釋器()。編譯器對高級語言源程序的處理過程可以劃分為詞法分析、語法分析、語義分析、中間代碼生成、代碼優化、目標代碼生成等幾個階段;其中,代碼優化和()并不是每種編譯器都必需的。詞法分析的作用是識別源程序中的(請作答此空)。A、常量和變量B、數據類型C、記號D、語句答案:C解析:本題考查程序語言基礎知識。在實現程序語言的編譯和解釋兩種方式中,編譯方式下會生成用戶源程序的目標代碼,而解釋方式下則不產生目標代碼。目標代碼經鏈接后產生可執行代碼,可執行代碼可獨立加載運行,與源程序和編譯程序都不再相關。而在解釋方式下,在解釋器的控制下執行源程序或其中間代碼,因此相對而言,用戶程序執行的速度更慢。中間代碼生成和優化不是編譯過程中必需的階段。對用戶源程序依次進行了詞法分析、語法分析和語義分析后,原則上就可以產生目標代碼了,只是目標代碼的質量和效率可能不夠高。詞法分析時編譯或解釋用戶源程序過程中唯一與源程序打交道的階段,其主要功能是按順序分析出源程序的記號。73.若事務T對數據R已經加了X鎖,則其他事務對數據R()。A、可以加S鎖,不能加X鎖B、不能加S鎖,可以加X鎖C、可以加S鎖,也可以加X鎖D、不能加任何鎖答案:D解析:處理并發控制的主要方法有兩種封鎖,分別是X封鎖和S封鎖。X封鎖又稱排他型封鎖,其含義是如果事務T對數據A(可以是數據項、記錄、數據集甚至整個數據庫)實現了X封鎖,那么只允許事務T讀取和修改數據A,其他事務要等事務T解除X封鎖以后,才能對數據A實現任何類型的封鎖。可見,X封鎖只允許一個事務獨鎖某個數據,具有排他性。因此,其他事務對數據R不能加任何鎖。74.設指令由取指、分析、執行3個子部件完成,并且每個子部件的時間均為△t。若采用常規標量單流水線處理機(即該處理機的度為1),連續執行12條指令,共需(請作答此空)△t。若采用度為4的超標量流水線處理機,連續執行上述12條指令,只需()△t。A、12B、14C、16D、18答案:B解析:指令由取指、分析和執行3個子部件完成,n=3,且每個子部件的時間均為Δt。若采用常規標量單流水線處理機(即該處理機的度m=1),連續執行12條(k=12)指令的時空圖如圖所示。執行這12條指令所需的總時間為:Tk=(k+3-1)*Δt=(12+3)*Δt=14Δt。若采用度為4(m=4)的超標量流水線處理機,連續執行上述12條(k=12)指令的時空圖如圖所示。由圖可知,執行這12條指令所需的總時間只需要5Δt。75.在一個線性表上可以進行二分查找(折半查找)的充分必要條件是()。A、線性表采用順序存儲且元素有序排列B、線性表采用順序存儲且元素無序排列C、線性表采用單鏈表存儲且元素有序排列D、線性表采用單鏈表存儲且元素無序排列答案:A解析:本題考查數據結構基礎知識。二分查找(折半查找)過程令處于中間位置記錄的關鍵字與給定值比較,若相等,則查找成功;若不等,則縮小范圍,直至新的查找區間中間位置記錄的關鍵字等于給定值或者查找區間沒有元素時(表明查找不成功)為止。顯然,在折半查找過程中需要對元素進行隨機訪問,且需要元素有序排列。76.操作系統文件管理中,目錄文件是由()組成的。A、文件控制塊B、機器指令C、匯編程序D、進程控制塊答案:A解析:本題考查操作系統文件管理方面的基礎知識。操作系統文件管理中為了實現"按名存取",系統必須為每個文件設置用于描述和控制文件的數據結構,它至少要包括文件名和存放文件的物理地址,這個數據結構稱為文件控制塊(FCB),文件控制塊的有序集合稱為文件目錄。換句話說,文件目錄是由文件控制塊組成的,專門用于文件的檢索。77.HTTP協議的默認端口號是()。A、23B、25C、80D、110答案:C解析:超文本傳輸協議(HTTP,HyperTextTransferProtocol)是互聯網上應用最為廣泛的一種網絡協議。所有的文件都必須遵守這個標準。HTTP是一個客戶端和服務器端請求和應答的標準(TCP)。客戶端是終端用戶,服務器端是網站。通過使用Web瀏覽器、網絡爬蟲或者其它的工具,客戶端發起一個到服務器上指定端口(默認端口為80)的HTTP請求。78.統一建模語言(UML)圖中,(請作答此空)用于對時間如何改變對象的狀態以及引起對象從一個狀態向另一個狀態轉換的事件進行建模。()是此種圖的一種特殊情況,對于系統的功能建模特別重要,并強調對象間的控制流程。A、序列圖B、狀態圖C、活動圖D、通信圖答案:B解析:本題考查統一建模語言(UML)的基本知識。UML2.0中提供了多種圖形。序列圖是場景的圖形化表示,描述了以時間順序組織的對象之間的交互活動,對用例中的場景可以采用序列圖進行描述。狀態圖展現了一個狀態機,用于對對象的狀態變化進行建模。活動圖專注于系統的動態視圖,它對于系統的功能建模特別重要,并強調對象間的控制流程,是狀態圖的一種特殊情況。通信圖強調收發消息的對象之間的結構組織。79.MD5是一種()算法。A、共享密鑰B、公開密鑰C、報文摘要D、訪問控制答案:C解析:MD5的全稱是Message-digestAlgorithm5(信息/報文摘要算法),是計算機安全領域廣泛使用的一種散列函數,用以提供消息的完整性保護。80.設指令由取指、分析、執行3個子部件完成,并且每個子部件的時間均為△t。若采用常規標量單流水線處理機(即該處理機的度為1),連續執行12條指令,共需()△t。若采用度為4的超標量流水線處理機,連續執行上述12條指令,只需(請作答此空)△t。A、3B、5C、7D、9答案:B解析:指令由取指、分析和執行3個子部件完成,n=3,且每個子部件的時間均為Δt。若采用常規標量單流水線處理機(即該處理機的度m=1),連續執行12條(k=12)指令的時空圖如圖所示。執行這12條指令所需的總時間為:Tk=(k+3-1)*Δt=(12+3)*Δt=14Δt。若采用度為4(m=4)的超標量流水線處理機,連續執行上述12條(k=12)指令的時空圖如圖所示。由圖可知,執行這12條指令所需的總時間只需要5Δt。81.通用程序設計語言可用于編寫多領域的程序,(30)屬于通用程序設計語言。A.HTMLA、SQLB、JavC、D、Verilog答案:C解析:可參考《程序員教程(第四版)》P208。匯編語言是與機器語言對應的程序設計語言,因此也是面向機器的語言。從適用范圍而言,某些程序語言在較為廣泛的應用領域被使用來編寫軟件,因此成為通用程序設計語言,常用的如C/C++,Java等。關系數據庫查詢語言特指SQL,用于存取數據以及查詢、更新和管理關系數據庫系統中的數據。函數式編程是一種編程范式,它將計算機中的運算視為函數的計算。函數編程語言最重要的基礎是演算(lambdacalculus),其可以接受函數當作輸入(參數〉和輸出(返回值〉。82.在Word編輯狀態下,將光標移至文本行首左側空白處呈刮形狀時,單擊鼠標左鍵可以選中(),按下(請作答此空)鍵可以保存當前文檔。A、Ctrl+SB、Ctrl+DC、Ctrl+HD、Ctrl+K答案:A解析:本題考查計算機基本操作。在Word編輯狀態下,輸入文字時有些英文單詞和中文文字下面會被自動加上紅色或綠色的波浪形細下劃線,紅色波浪線表示拼寫錯誤,綠色波浪線表示語法錯誤,這就是Word中文版提供的"拼寫和語法"檢查功能,它使用波浪形細下劃線提醒用戶,此處可能有拼寫或語法錯誤。使用Word中文版提供的熱鍵Ctrl+S可以保存當前文檔;Ctrl+D可以打開字體選項卡:Ctrl+H可以打開查找替換對話框的查找選項卡;Ctrl+K可以打開超鏈接對話框。83.采用面向對象程序設計語言C++/Java進行系統實現時,定義類S及其子類D。若類S中已經定義了一個虛方法intfun(inta,intb),則方法(44)不能同時在類S中。D中定義方法intfun(inta,intb),這一現象稱為(45)。A、intfun(intx,doubley)B、intfun(doublea,intb)C、doublefun(intx,doubley)D、intfun(intx,inty)答案:D解析:在同一類中是不能定義兩個名字相同、參數個數和類型都相同的函數的,否則就是重復定義,但是在類的繼承層次結構中,在不同的層次中可以出現名字相同、參數個數和類型都相同而功能不同的函數。虛函數的作用是允許在派生類中重新定義與基類同名的函數,并且可以通過基類指針或引用來訪問基類和派生類中的同名函數。重載是在同一類中允許同時存在一個以上的同名方法,只要這些方法的參數個數或類型不同即可,而重置(覆蓋)是子類重新定義父類中己經定義的方法,即子類重寫父類方法。84.程序語言提供的傳值調用機制是將()。A、實參的值傳遞給被調用函數的形參B、實參的地址傳遞給被調用函數的形參C、形參的值傳遞給被調用函數的實參D、形參的地址傳遞給被調用函數的實參答案:A解析:本題考查程序語言基礎知識。傳值調用是指將實參的值傳遞給形參,然后執行被調用的函數。實參可以是常量、變量、表達式和函數調用等。85.從下列名詞中區分類和對象。其中,(請作答此空)全部是類,()全部是對象。A、課程、2013"Web工程"課程、學生B、課程、學生、教室C、2013"Web工程"課程、學生D、2013"Web工程"課程、B601教室答案:B解析:本題考查面向對象的基礎知識。在面向對象的系統中,一個類定義了一組大體上相似的對象,所包含的方法和數據描述了一組對象的共同行為和屬性。每個現實世界中的實體都是對象,即對象是基本的運行時實體,每個對象都有自己的屬性和操作。類是對象之上的抽象,對象是類的具體化,是類的實例。如課程、學生、教室等是類,而2013"Web工程"課程說明具體某年度的一門課,是課程的一個實例,B601教室是具體的一間教室,是教室的一個實例。86.下面關于計算機Cache的論述中,正確的是()。A、Cache是一種介于主存和輔存之間的存儲器,用于主輔存之間的緩沖存儲B、如果訪問Cache不命中,則用從內存中取到的字節代替Cache中最近訪問過的字節C、Cache的命中率必須很高,一般要達到90%以上D、Cache中的信息必須與主存中的信息時刻保持一致答案:C解析:當CPU發出訪存請求后,存儲器地址先被送到cache控制器以確定所需數據是否已在cache中,若命中則直接對cache進行訪問。這個過程稱為cache的地址映射。常見的映射方法有直接映射、相聯映射和組相聯映射。當cache存儲器產生了一次訪問未命中之后,相應的數據應同時讀入CPU和cache。但是當cache已存滿數據后,新數據必須淘汰cache中的某些舊數據。最常用的淘汰首法有隨機淘汰法、先進先出法(FIFO)和近期最少使用淘汰法(LRU)。因為需要保證緩存在cache中的數據與主存中的內容一致,相對讀操作而言,cache的寫操作較復雜,常用的有以下幾種方法。(1)寫直達(writethrough)。當要寫cache時,數據同時寫回主存儲器,有時也稱為寫通。(2)寫回(writeback)。CPU修改cache的某一行后,相應的數據并不立即寫入主存儲器單元,而是當該行從cache中被淘汰時,才把數據寫回到主存儲器中。(3)標記法。對cache中的每一_據設罝一^有效位。當數據進入cache后,有效位罝1;而當CPU要對該數據進行修改時,數據只需寫入主存儲器并同時將該有效位清0。當要從cache中讀取數據時黑要測試其有效位:若為1則直接從cache中取數,否則從主存中取數。87.登錄遠程計算機采用的協議是()。A、HTTPB、TelnetC、FTPD、SMTP答案:B解析:HTTP是超文本傳輸協議,用以瀏覽網頁;Telnet是遠程登錄協議;FTP為文件傳輸協議;SMTP為簡單郵件傳輸協議,用來發送郵件。88.“http://.x123.arts.hk”中的“arts.hk”代表的是(5)。A、韓國的商業機構B、香港的商業機構C、韓國的藝術機構D、香港的藝術機構答案:D解析:域名結構由若事分量組成,書寫時按照由小到大的順序,頂級域名放在最右邊,分配給主機的名字放在最左邊,各級名字之間用(.)隔開。格式為:分配給主機的名字.三級域名.二級域名.頂級域名。例:.xl23.arts.hk。因特網最高層域名分為機構性域名和地理性域名兩大類。常見的國家或地區頂級域名如表1所示。常見的機構性域名如表2所示。89.以下關于CPU的敘述中,正確的是(6)A、CPU中的運算單元、控制單元和寄存器組通過系統總線連接起來B、在CPU中,獲取指令并進行分析是控制單元的任務C、執行并行計算任務的CPU必須是多核的D、單核CPU不支持多任務操作系統而多核CPU支持答案:B解析:本題考查中央處理器的知識,參考程序員教程(第四版)教程P21。90.下圖所示為(請作答此空)設計模式,適用于()。A、抽象工廠(AbstractFactory)B、生成器(Builder)C、工廠方法(FactoryMethod)D、原型(Prototype)答案:B解析:生成器又稱建造模式,是一種對象構建模式。它可以將復雜對象的建造過程抽象出來(抽象類別),使這個抽象過程的不同實現方法可以構造出不同表現(屬性)的對象。該模式通常包含Builder,ConcreteBuilder,Di-rector和Product四部分。91.標準化對象一般可分為兩大類:一類是標準化的具體對象,即需要制定標準的具體事物;另一類是(),即各種具體對象的總和所構成的整體,通過它可以研究各種具體對象的共同屬性、本質和普遍規律。A、標準化抽象對象B、標準化總體對象C、標準化虛擬對象D、標準化面向對象答案:B解析:標準化對象一般可分為兩類:一類是標準化的具體對象;另一類是標準化總體對象。92.若用PV操作控制進程P1~P4并發執行的過程,則需要設置5個信號量S1、S2、S3、S4和S5,且信號量S4

溫馨提示

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

評論

0/150

提交評論