(2021年)甘肅省蘭州市全國計算機等級考試數據庫技術預測試題(含答案)_第1頁
(2021年)甘肅省蘭州市全國計算機等級考試數據庫技術預測試題(含答案)_第2頁
(2021年)甘肅省蘭州市全國計算機等級考試數據庫技術預測試題(含答案)_第3頁
(2021年)甘肅省蘭州市全國計算機等級考試數據庫技術預測試題(含答案)_第4頁
(2021年)甘肅省蘭州市全國計算機等級考試數據庫技術預測試題(含答案)_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

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

文檔簡介

(2021年)甘肅省蘭州市全國計算機等級考試數據庫技術預測試題(含答案)學校:________班級:________姓名:________考號:________

一、1.選擇題(10題)1.設關系R和S各有100個元組,那么這兩個關系的乘積運算結果的元組個數為______。

A.100B.200C.10000D.不確定(與計算結果有關)

2.對某二叉樹進行前序遍歷的結果為ABDEFC,中序遍歷的結果為DBFEAC,則后序遍歷結果為

A.DBFEACB.DFEBCAC.BDFECAD.BDEFAC

3.數據庫管理員通過建立______可以達到每個教師只能存取自己講授課程的學生成績。

A.視圖(view)B.索引(index)C.游標(cursor)D.表(table)

4.在以下四個WWW網址中,________網址不符合WWW網址書寫規(guī)則。

A.

B.

C.

D.WWW..jp

5.一個信息表student,要求它由學號sno,姓名sname,性別sex,年齡age,4個屬性組成?,F在對這個現有的表增加一個入學時間cometime字段為日期型,下列語句正確的是

A.ALTERTABLEstudentADDcometimeDATENOTNULL;

B.ALTERTABLEsudentADDcometimeDATE;

C.AlTERTABLEstudentDROPcometimeDATENOTNULL;

D.ALTERTABLEsudentMODIFYcometimeDATE;

6.建立計算機網絡的主要目的是實現計算機資源的共享。計算機資源主要指計算機的______。

Ⅰ.硬件、軟件

Ⅱ.Web服務器、數據庫服務器

Ⅲ.數據

Ⅳ.網絡操作系統

A.Ⅰ和ⅡB.Ⅱ和ⅣC.Ⅰ、Ⅱ和ⅣD.Ⅰ和Ⅲ

7.在數據庫技術中,實體-聯系模型是一種

A.概念數據模型B.結構數據模型C.物理數據模型D.邏輯數據模型

8.在高級語言中使用嵌入式SQL語句時,所有SQL語句前必須加前綴______。

A.CALLSQLB.DOSQLC.EXECSQLD.GOTOSQL

9.在關系數據庫設計中,使每個關系達到3NF。這是哪個設計階段的任務?

A.需求分析B.概念設計C.邏輯設計D.物理設計

10.OLAP的基本概念不包括______。

A.度量屬性B.維C.數據分析D.事務處理

二、填空題(10題)11.由于視圖是虛表,因此對視圖的修改,最終要轉換為對

【】

的修改。

12.散列表存儲的基本思想是:由結點的______決定結點的存儲地址。

13.給定一個銷售交易數據庫,從中找出這些交易中的某些數據項和其他一些數據項之間的關聯關系,這種數據挖掘一般稱為______挖掘。

14.如果資源分配圖中沒有______,則系統中沒有死鎖發(fā)生。

15.【】不允許關系模式的屬性之間有這樣的非平凡函數依賴X→Y,其中X不包含碼,Y是非主屬性。

16.用戶檢索POP3郵件服務器的過程可以分成3個階段:___________、事務處理階段、更新階段。

17.操作系統之所以能夠找到磁盤上的文件,是因為有磁盤上的文件名與存儲位置的記錄。在DOS中,它叫做___________。

18.虛擬頁式存儲管理中,當內存空間已經被占滿而又要調入新頁時,必須進行面試淘汰。頁面淘汰算法包括:最佳淘汰算法(OPT)、

【】

、最近最少使用淘汰算法(LRU)和最不經常使用淘汰算法(LFU)。

19.使用PowerDesigner的DataArchitect,可以對已有的數據庫生成物理模型(PDM),這種功能通常稱為______。

20.分布式數據庫系統的所有問題都是內部的、

【】

級別的問題,而不是外部的、

【】

級別的問題

三、單選題(10題)21.對具有相同關鍵字的關系模式,如果他們的處理主要是查詢操作,且常在一起,可將這列關系模式進行什么操作?

A.模式評價B.優(yōu)化模式C.合并D.分解

22.在登錄日志文件時,應該

A.將更新數據庫與登錄文件兩個操作同時完成

B.將更新數據庫與登錄文件兩個操作按隨機的順序完成

C.先寫數據庫的更新,后登錄日志文件

D.先登錄日志文件,后寫數據庫的更新

23.“把查詢sc表和更新sc表的grade列的權限受予用戶user1”的正確SQL語句是()。

A.GRANTSELECT,UPDATE(grade)ONTABLEscTOuser1

B.GRANTSELECTsc,UPDATEsc,gradeTOuser1

C.GRANTSELECT,UPDATEONTABLEsC.gradeTOuser1

D.GRANTSELECTONTABLEsc,UPDATEONTABLEsc(grade)TOuser1

24.在SQLServer系統數據庫中,存放用戶數據庫公共信息的是__________。

A.masterB.modelC.msdbD.tempdb

25.設棧S和隊列Q的初始狀態(tài)為空,元素e1、e2、e3、e4、e5和e6依次通過棧S,一個元素出棧后即進入隊列Q,若6個元素出棧的順序是e2、e4、e3、e6、e5、e1,則棧S的容量至少應該是()

A.6B.4C.3D.2

26.E-R模型轉換成關系模型是在數據庫設計階段中的()階段。

A.概念設計B.邏輯設計C.物理設計D.實現

27.下列關于數據的邏輯結構的敘述中,哪一個是正確的?()。

A.數據的邏輯結構是數據間關系的描述

B.數據的邏輯結構反映了數據在計算機中的存儲方式

C.數據的邏輯結構分為順序結構和鏈式結構

D.數據的邏輯結構分為靜態(tài)結構和動態(tài)結構

28.SQL語言的GRANT和REVOKE語句主要用來維護數據庫的()。A.安全性B.完整性C.可靠性D.一致性

29.一個棧的入棧序列是a、b、c、d、e,則棧的不可能的輸出序列是()

A.edcbaB.decbaC.dceabD.abcde

30.索引使用原則中不可以為該列建立索引的是:()

A.經常在查詢中作為條件被使用的列。

B.頻繁進行排序或分組的列。

C.一個列的值域很大時。

D.如果待排列的列有多個,選擇任意一列。

四、C語言程序設計題(10題)31.函數ReadDat實現從文件in.dat中讀取一篇英文文章,存入到字符串數組XX中;請編制函數eneryptChar,按給定的替代關系對數組XX中的所有字符進行替代,仍存入數組XX對應的位置上,最后調用函數WriteDat把結果xX輸出到文件out.dat中。

替代關系:f(p)=p*11mod256,mod為取余運算,P是數組XX中某一個字符的ASCII值,f(p)是計算后的無符號整型值(注意:中間變量定義成整型變量),如果計算后f(p)值小于等于32或f(p)對應的字符是大寫字母,則該字符不變,否則用f(p)替代所對應的字符。

注意:部分源程序存放在test.c文件中,原始數據文件存放的格式是:每行的寬度均小于80個字符,含標點符號和空格,并也按此替代關系進行處理。

請勿改動主函數main、讀函數ReadDat和輸出函數WriteDat的內容。

32.已知在in.dat中存有若干個(個數<200)四位數字的正整數,函數ReadDat讀取這若干個正整數并存入數組XX中。請編制函數CalValue,其功能要求:1.求出該文件中共有多少個正整數totNum;2.求出這些正整數中的各位數字之和是奇數的數的個數totCnt,以及滿足此條件的這些正整數的算術平均值totPjz。最后maini函數調用函數WriteDat把所求的結果輸出到0ut.dat文件中。

注意:部分源程序存放在test.C文件中。

請勿改動數據文件in.dat中的任何數據,主函數main、讀函數ReadDat和輸出數據函數WriteDat的內容。

33.程序test.c的功能是:計算出自然數SIX和NINE滿足條件SIX+SIX+SIX=NINE+NINE的個數cnt,以及滿足此條件的所有SIX與NINE的和SUM。請編寫函數countValue實現程序的要求,最后main函數調用函數writeDAT把結果cnt和sum,輸出到文件0ut.dat中。

其中的S,I,X,N,E各代表一個十進制數字,允許代表的數字相同,但s和N不能為0。例如:944+944+944=1416+1416注意:部分源程序存放在test.c文件中。

請勿改動主函數main和輸出數據函數writeDAT的內容。

34.編寫一個函數findStr(char*str,char*substr),該函數統計一個長度為2的子字符串substr在另一個字符串str中出現的次數,該次數作為函數值返回。例如,假定輸入的字符串為”asdasasdfgasdaszx67asdmklo”,子字符串為”as”,函數返回值是6。

函數ReadWrite實現從文件in.dat中讀取兩個字符串,并調用函數findStr,最后把結果輸出到文件out.dat中。

注意:部分源程序存在test.c文件中。請勿改動主函數main和其他函數中的任何內容,僅在函數findStr的花括號中

填入你編寫的若干語句。

35.已知在文件in.dat中存有100個產品銷售記錄,每個產品銷售記錄由產品代碼dm(字符型4位),產品名稱me(字符型10位),單價dj(整型),數量sl(整型),金額je(長整型)五部分組成。其中:金額=單價*數量。函數ReadDat讀取這100個銷售記錄并存入結構數組sell中。請編制函數SortDat,其功能要求:按產品名稱從大到小進行排列,若產品名稱相同,則按金額從大到小進行排列,最終排列結果仍存入結構數組sell中。最后mainoi函數調用函數WriteDat把結果輸出到文件out.dat中。

提示:若中間變量為PROtemp,則可以直接使用結構賦值語句進行解題:產品名稱比較請用函數strcrnp進行解題。例如:sell[i]=temp;

注意:部分源程序存放在test.c文件中。

請勿改動主函數main、讀函數ReadDat和輸出函數WriteDat的內容。

36.程序test.c的功能是:選出1000至5000范圍內(包括1000、5000)符合下面條件的四位自然數。條件是:千位數字與百位數字之和等于十位數字與個位數字之和,且千位數字與百位數字之和等于個位數字與千位數字之差的整10倍。計算并輸出這些四位自然數的個數cnt以及這些數的和sum。請編寫函數countValue實現程序的要求。最后main函數調用函數writeDAT把結果crlt和sum輸出到out.dat文件中。

37.在文件in.dat中存有若干個(個數<200)四位數字的正整數,函數ReadDat讀取這若干個正整數并存入數組XX中。請編制函數CalValue,其功能要求:1.求出該文件中共有多少個正整數totNum;2.求出這些正整數中的各位數字之和是偶數的數的個數totCnt,以及滿足此條件的這些正整數的算術平均值totPjz。最后main函數調用函數WriteDat把所求的結果輸出到0ut.dat文件中。

注意:部分源程序存放在test.c文件中。

請勿改動數據文件in.dat中的任何數據,主函數main、讀函數ReadDat和輸出函數WriteDat的內容。

38.在文件in.dat中已存有200個正整數,且每個數均在1000至9999之間。函數readDat是讀取這200個數存放到數組aa中。請編制函數jsSort,其函數的功能是:要求按每個數的后三位的大小進行降序排列,如果出現后三位相等的數值,則對這些數值按原始4位數據進行升序排列,將排序后的前10個數存入數組bb中。

最后調用函數writeDat把結果bb輸出到文件out.dat中。

39.已知數據文件in.dat中存有200個四位數,并已調用讀函數readDat0把這些數存入數組a中,請考生編制一函數jsVal,其功能是:依次從數組a中取出一個四位數,如果該四位數大于該四位數以后的連續(xù)五個數且該數是奇數(該四位數以后不滿五個數,則不統計),則統計出滿足此條件的個數cnt并把這些四位數按從小到大的順序存入數組b中,最后調用寫函數writeDat把結果cnt以及數組b中符合條件的四位數輸出到0ut.dat文件中。

注意:部分源程序存在test.C文件中。

程序中已定義數組:a[200],b[200],已定義變量:cnt

請勿改動數據文件in.dat中的任何數據、主函數main、讀函數readDat和寫函數writeDat的內容。

40.程序test.C的功能是:利用以下所示的簡單迭代方法求方程cos(x).x=0的一個實根。迭代公式:Xn+1=cos(xn)(n是迭代次數)

迭代步驟如下:

(1)取X1初值為0.0;

(2)X0=X1,把X1的值賦給x0;

(3)X1=cos(x0),求出一個新的x1;

(4)若x0.X1的絕對值小于0.000001,執(zhí)行步驟(5),否則執(zhí)行步驟(2);

(5)所求X1就是方程cos(X)-X=0的一個實根,作為函數值返回。

請編寫函數countValue實現程序的功能,最后main函數調用函數writeDAT把結果輸出到文件0ut.dat中。注意:部分源程序存放在test.C文件中。

請勿改動主函數main和輸出數據函數writeDAT的內容。

五、設計與應用題(2題)41.某教務管理系統使用SQLServer2008數據庫管理系統,數據庫軟硬件配置信息如下:Ⅰ.數據庫運行在兩路IntelXeonE5-26092.4GHzCPU(每路CPU4核心),128GB內存、2塊300GB15000轉SAS硬盤(RAIDl)的服務器上;Ⅱ.服務器操作系統為Windows200332位企業(yè)版,安裝SP2補丁;Ⅲ.數據庫為SQLServer2008Enterprise(32位),數據庫中總數據量近130GB。近一個學期以來,用戶反映系統運行緩慢,經程序員定位,確定為數據庫服務器響應緩慢,需要進行調優(yōu)。(10分)

42.設有某商業(yè)單位需要建立商務數據庫用以處理銷售記賬,它記錄的數據包括:顧客姓名,所在單位及電話號碼;商品名稱,型號,產地及單價;某顧客購買某商品的數量及日期。假定無同名顧客,無同型號商品,由話公用靦客可存不同日期買同一商品。(1)請畫出該單位的商務ER圖模型并優(yōu)化。(6分)(2)將ER模型換成關系模型并規(guī)范化到3NF。(4分)

六、單選題[1分](2題)43.下列是關于關系數據模型和關系表的說法:Ⅰ.關系數據模型以集合論為基礎表示和處理數據Ⅱ.關系數據模型同時支持非過程化語言和過程化語言直接存取數據Ⅲ.“createtable…”語句用于定義關系表的結構及數據完整性約束Ⅳ.在關系表上執(zhí)行select或delete操作時,DBMS會檢查數據完整性約束上述說法中正確的是()。

A.僅Ⅰ和ⅢB.僅Ⅱ和ⅣC.僅Ⅲ和ⅣD.僅Ⅰ和Ⅳ

44.在SQLServer2008中,設有商品表(商品號,商品名,生產13期,單價,類別)。現經常需要執(zhí)行下列查詢:SELECT商品號,商品名,單價FROM商品表WHERE類別IN(ˊ食品ˊ,ˊ家電ˊ)ORDERBY商品號現需要在商品表上建立合適的索引來提高該查詢的執(zhí)行效率。下列建立索引的語句,最合適的是()。

A.CREATEINDEXIdxlON商品表(類別)

B.CREATEINDEXIdxlON商品表(商品號,商品名,單價)

C.CREATEINDEXIdxlON商品表(類別,商品號)INCLUDE(商品名,單價)

D.CREATEINDEXIdxlON商品表(商品號)INCLUDE(商品名,單價)WHERE類別=ˊ食品ˊ0R類別=ˊ家電ˊ

參考答案

1.C解析:兩個關系的乘積結果:元數(屬性數)等于兩關系元數相加,元組個數等于兩關系元組數相乘。

2.B解析:通過兩種樹的遍歷序列來推斷第三種樹的遍歷時,反復利用前序和中序遍歷的性質,就可以確定二叉樹。前序遍歷的第一個結點A為樹的根結點;中序遍歷中A左邊的結點在A的左子樹中,A的右邊的結點在A的右子樹中;再分別對A的左右子樹進行前面步驟的重復處理,直到每個結點都找到正確的位置。

3.A解析:視圖具有安全性的特性,因此建立視圖能很好的解決這個問題,為此DBA應創(chuàng)建視圖。

4.B解析:WWW網址中,用來表示國家的域名應該放在最后一部分。因此本題中B不符合WWW網址的書寫規(guī)則。

5.B解析:新增加的列一律允許為空值,故A錯。DROP用于刪除指定的完整性約束,故C錯。MODIFY用于修改原有的列定義,故D錯。

6.D解析:資源共享的觀點將計算機網絡定義為“以相互共享資源的方式互聯起來的自治計算機系統的集合”。資源共享的觀點定義符合當前計算機網絡的基本特征。它主要表現在計算機網絡建立主要目的是實現計算機資源共享。計算機資源主要指計算機硬件、軟件與數據。

7.A解析:概念模型是對信息世界建模,所以概念模型應該能夠方便、準確地表示信息世界中的常用概念。概念模型的表示方法很多,其中最為常用的是P.P.Chen于1976后提出的實體—聯系方法。該方法用E-R圖來描述現實世界的概念模型,稱為實體-聯系模型(Entity-RelationshipModel)簡稱E-R模型。

8.C解析:在嵌入式SQL中,為能夠區(qū)分SQL語句與主語言語句,所有的SQL語句都必須加前綴EXECSQL。但語句的結束標志隨主語言的不同而不同。

9.C解析:使每個關系達到3NF也就是使關系模式規(guī)范化。很顯然,需求分析和概念設計階段還沒有產生相應的關系模式,也就沒有關系模式的規(guī)范化3NF之說。只有到邏輯設計階段才涉及到關系模式和關系模式規(guī)范化的問題。因此本題正確答案為選項C。

10.D解析:OLAP是指聯機分析處理,基本特征為信息處理。由于OLAP本身就有數據分析的含義,并且OLAP和OLTP是相對而言的,所以選項D事務處理不是OLAP的基本概念,而是OLTP的特性。本題正確選項為D。

11.基本表或表通過視圖修改數據包括插入,刪除和修改三類操作,由于視圖是虛表,因此對視圖的更新,最終要轉換為對基本表的更新。

12.關鍵碼值關鍵碼值

13.關聯規(guī)則關聯規(guī)則

14.環(huán)或環(huán)路或回路或進程環(huán)路環(huán)或環(huán)路或回路或進程環(huán)路解析:死鎖是一種系統狀態(tài),在多道程序系統中,一組進程的每一個進程均無限期地等待被該組進程中的另一個進程所永遠不會釋放的資源。產生死鎖的必要條件是:

①互斥條件

②不可剝奪(不可搶占)

③部分分配(占有等待)

④循環(huán)等待

如果沒有一個資源占有的環(huán)路,是不會形成死鎖的。

15.3NF3NF解析:3NF不允許關系模式的屬性之間有這樣的非平凡函數依賴X→Y其中X不包含碼,Y是非主屬性。

16.認證階段【解析】用戶檢索POP3郵件服務器的過程可以分成3個階段:認證階段、事務處理階段、更新階段。

17.FAT【解析】操作系統之所以能夠找到磁盤上的文件,是因為有磁盤上的文件名與存儲位置的記錄。在DOS里,它稱為文件表(FAT);在Windows里,稱為虛擬文件表(VFAT);在mM的操作系統OS/2里,稱為高性能文件系統(HPFS)。

18.先進先出淘汰算法(FIFO)頁面淘汰算法包括最佳淘汰算法,先進先出淘汰算法,最近最久未使用算法,最近使用最少淘汰算法

19.逆向工程逆向工程

20.實現

用戶分布式數據庫系統;一個分布式數據庫在邏輯上是一個統一的整體,在物理上則是分別存儲在不同的物理節(jié)點上。一個應用程序通過網絡的連接可以訪問分布在不同地理位置的數據庫。它的分布性表現在數據庫中的數據不是存儲在同一場地

21.C解析:對具有相同關鍵字的關系模式,如果他們的處理主要是查詢操作,且常在一起,可將這列關系模式進行合并。掌握關系數據庫的邏輯結構設計過程,如何正確運用模式評價、優(yōu)化模式、分解。

22.D解析:為保證數據庫是可恢復的,登記日志文件時必須遵循以下兩條原則:1、登記的次序嚴格按并發(fā)事務執(zhí)行的時間次序;2、必須先寫日志文件,后寫數據庫。

23.A解析:SQL語言用GRANT語句向用戶授予數據訪問權限,GRANT語句的一般格式為:

GRANT<權限>[,<權限>]…

[ON<對象類型><對象名>][,<對象名>]…

TO<用戶>[,<用戶>]…

[WITHGRANTOPTION]

所以正確的是選項A)。

24.B

25.C

26.B

27.A解析:按照邏輯結構的定義:數據的邏輯結構是數據間關系的描述,只抽象地反映數據元素之間的邏輯關系,不管其存儲方式。順序結構、鏈式結構、靜態(tài)結構和動態(tài)結構都是指存儲結構。因此A是正確的。

28.ASQL語言中用GRANT、REVOKE語句實現數據控制功能,數據庫中權限的授予可以使用GRANT....ON....TO....語句,要求指明授予哪個用戶(組)對哪個對象有什么權限,而REVOKE語句實現數據庫權限的回收,需要指明從哪個用戶(組)回收對于哪個對象的什么權限。

29.C

30.D

31.\n【審題關鍵句】字符替代f(p)=p*11mod256,小于等于32或對應大寫字母不變,否則替換。

\n【解題思路】

\n本題類似第65套試題,通過審題可以發(fā)現主要是排序條件的設置要求有所不同,參考答案的第6行,修改if條件語句的設置即可。另外,在源程序中已經定義了一個無符號變量va1,因此,在編寫答案程序時,不需要再重新定義。

\n【參考答案】

\n

\n

32.\n【審題關鍵句】讀取正數,統計個數,各位數之和為奇數的數的個數及平均值。

\n【解題思路】

\n本題類似第46套試題,通過審題可以發(fā)現僅有一個不同點,即四位數的各位數之和為奇數,參考答案的第13條語句,將該該語句為判斷各位數字之和是奇數的表達式即可。

\n【參考答案】

\n

\n

33.【審題關鍵句】計算滿足條件的sIX+sIX+sIx-NINE+NINE的SIX和NINE的個數以及滿足此條件所有的SIX與NINE的和,S,I,X,N,E各代表一個十進制數字。

\n【解題思路】

\n①定義整型變量S,i,X,n,e,six,nine。

\n②在第一層for循環(huán)中,因為S的值不能為0,所以循環(huán)變量s從1開始,依次遞增直到其值等于10,退出循環(huán)。在第二層for循環(huán)中,循環(huán)變量i從0開始,依次遞增直到其值等于10,退出循環(huán)。在第三層for循環(huán)中,循環(huán)變量X從0開始,依次遞增直到其值等于10,退出循環(huán)。在第四層for循環(huán)中,因為n的值不能為0,所以循環(huán)變量n從1開始,依次遞增直到其值等于10,退出循環(huán)。在第五層for循環(huán)中,循環(huán)變量e從0開始,依次遞增直到其值等于10。

\n③設置完所有for循環(huán)條件后,在循環(huán)體中,由變量S的值乘以l00,變量i的值乘以10,以及變量X組成一個三位數賦給變量six,由變量n的值乘以1000,變量i的值乘以100,變量n的值乘以10,以及變量e組成一個四位數賦給變量nine,再用if條件語句判斷,如果三倍的six等于兩倍的nine,則計數變量cnt加1,把six與nine的和累加到變量sum,同時在屏幕上,輸出six與nine的值。

\n【參考答案】

\n

\n

\n

34.\n【審題關鍵句】統計一個長度為2的子字符串在另一個字符串中出現的次數。

\n【解題思路】

\n①定義字符指針p,q,并且q指向字符串str。定義計數整型變量cnt,設置其值等于0。

\n②在while循環(huán)中調用C語言的字符串庫函數strstr,返回子字符串substr在字符串q第一次出現的位置,賦給變量P。用if語句判斷,如果p的值為空,則說明在字符串str沒有找到子字符串,退出循環(huán)。否則,變量cnt加1,再把P的值加2(因為子字符串substr的長度為2)賦給變量q,執(zhí)行下一次循環(huán)。直到字符串中不存在子字符串時,退出循環(huán)結束。

\n③最后,返回子字符串substr在字符串str中出現的次數。

\n【參考答案】

\n

35.\n【審題關鍵句】計算金額,按產品名稱從大到小進行排列,相同的則按金額從大到小排列,結果存入結構數組。

\n【解題思路】

\n本題類似第57套試題,通過審題可以發(fā)現主要是排序條件的設置要求有所不同,參考答案的第8行進行修改即可。

\n【參考答案】

\n

\n

36.\n【審題關鍵句】千位+百位等于十位十個位,且千位+百位等于個位.千位的10倍。計算并輸出這些四位自然數的個數cnt以及這些數的和。

\n【解題思路】

\n①首先定義一個循環(huán)變量i,以及分別用來存放四位數分解之后各位數的變量qw(千位)、bw(百位)、SW(十位)和gw(個位)。

\n②通過for循環(huán)依次對數組中的每個四位數進行分解,循環(huán)初值為1000,終值為5000,每循環(huán)一次,循環(huán)變量i的值加1。每分解一個四位數,根據題目要求,判斷其“千位十百位=十位+個位”的條件是否滿足,同時判斷“(千位+百位)=(個位-于位)*10”的條件是否滿足,兩個條件之間用運算符進行連接。當同時滿足以上兩個判斷條件時,計數變量cnt的值加1,同時將該四位數累加到求和變量sum中,最終得到滿足條件的四位自然數個數cnt及它們的和sum。

\n本題中cnt和sum變量在源程序中已經定義,在該子程序中就不需要再重新定義了。

\n【參考答案】

\n

\n

37.\n【審題關鍵句】讀取正數,統計個數,各位數字之和為偶數的數的個數及平均值。

\n【解題思路】\n\t\t定義整型循環(huán)變量i、j,表示各位數字之和的長整型變量he以及存儲一個四位數的字符數組num[5]。

\n②循環(huán)變量i從0開始,依次遞增到4,對字符數組num[5]的每個元素賦初值0。

\n③循環(huán)變量i從0開始,依次遞增到MAXNUM.1,對每個數組元素xx[i]進行判斷,如果xx[i]的值非零,則變量totNum加1,退出循環(huán)時,totNm的值就是文件in.dat中存有的四位正整數的個數。

\n④循環(huán)變量i從0開始,依次遞增到totNum-1,對于每個數組元素xx[i]調用庫函數sprintf以4個字符寬度形式輸出到字符數組num中,用字符數組num中的每個元素減去0的ASCII碼48,就分別得到XX[i]這個四位數每位上的數字,并把這四個數字相加賦給變量j。再對變量j對2求余數進行判斷其值是否等于0,如果等于0,則說明j是偶數,變量totCnt加1,并把xx[i]的值累加到變量he。

\n⑤退出循環(huán)后,把變量he的類型轉換成雙精度型再除以totCnt得到符合條件的數的算術平均值totPjz。

\n【參考答案】

\n

\n

38.\n【審題關鍵句】按每個數的后三位降序排列,然后取出滿足此條件的前10個數依次存入數組;如果后三位的數值相等,則按原先的數值進行升序排列。

\n【解題思路】本題類似第7套試題,通過審題可以發(fā)現主要有兩個不同點:①按每個數的后三位降序排列,參考答案的第5條語句,修改兩數組元素的大小比較符即可;②后三位的數值相等則按原先的數值進行升序排列,參考答案的第13條語句,同樣也是修改兩數組元素的大小比較符即可。

\n【參考答案】

\n

\n

\n

39.\n【審題關鍵句】大于后連續(xù)5個數,奇數,從小到大排序。

\n【解題思路】本題類似第35套試題,通過審題可以發(fā)現主要有兩個不同點:①判斷數值為奇數,可通過a[i]%2進行判斷,參考答案的第4條語句;②要求進行比較的元素大于后連續(xù)5個數,因此在設置判斷條件時,作為比較的兩個數之間應該是大于關系,參考答案的第4條語句。

\n【參考答案】

\n

\n

40.\n【審題關鍵句】Xn+1=cos(Xn)的迭代計算。

\n【解題思路】

\n①因為方程cos(x).x=0的根為實數,所以定義兩個雙精度型變量x0,x1。并把變量x1的初值設為0.0。

\n②根據題目中給出的求方程一個實根的迭代算法,在while循環(huán)中,首先把變量x1的值賦給x0,然后利用表達式cos(xO)

\n求出一個值x1,再調用vc6.0的求絕對值的庫函數fabs0,判斷如果x0與x1差的絕對值小于0.000001,就認為x1的值是方程cos(x).x=0的一個實根,此時退出循環(huán),把xl的值返回。

\n【參考答案】

\n

41.【解題思路】數據庫性能優(yōu)化的基本原則就是通過盡可能少的磁盤訪問獲得所需要的數據。SQLSERVER性能優(yōu)化一般從數據庫設計、應用程序編碼、硬件優(yōu)化、數據庫索引、SQL語句、事務處理幾個方面人手考慮問題。(1)分析階段:在系統分析階段往往有太多需要關注的地方,系統各種功能性、可用性、可靠性、安全性需求吸引了我們大部分的注意力,但必須注意的是,性能往往是很重要的非功能性需求,必須根據系統的特點確定其實時性需求、響應時間的需求、硬件的配置等。最好能有各種需求量化的指標。(2)設計階段:例如數據庫邏輯設計規(guī)范化;合理的冗余;主鍵的設計;外鍵的設計;字段的設計;數據庫物理存儲和環(huán)境的設計;數據庫的物理存儲、操作系統環(huán)境及網絡環(huán)境的設計,皆使得我們的系統在將來能適應較多用戶的并發(fā)操作和較大的數據處理量。這里需要注意文件組的作用,適用文件組可以有效的把I/O操作分散到不同的物理硬盤,提高并發(fā)能力。(3)系統設計:整個系統的設計,特別是系統結構的設計對性能具有很大的影響。對于一般的OLTP系統,可以選擇C/S結構、三層的C/S結構等,不同的系統結構其性能的關鍵也有所不同。系統設計階段應歸納某些業(yè)務邏輯在數據庫編程階段實現,數據庫編程包括數據庫存儲過程、觸發(fā)器和函數。用數據庫編程實現業(yè)務邏輯的好處是減少網絡流量并能更充分利用數據庫的預編譯和緩存功能;索引設計階段可以根據功能和性能的需求進行初步的索引設計,這里需要根據預計的數據量和查詢來設計索引,可能與將來實際使用時有所區(qū)別。(4)編碼階段:編碼階段首先需要所有程序員具備優(yōu)化意識,也就是在實現功能的同時具備考慮優(yōu)化性能的思想。數據庫是能進行集合運算的工具,所謂集合運算實際是批量運算,即是盡量減少在客戶端進行大數據量的循環(huán)操作,而用SQL語句或者存儲過程代替。這個階段主要是注意在SQL語句等方面的優(yōu)化,如:盡量少做重復的工作,用SELECT后跟需要的字段代替SELECT*語句,注意事務和鎖,注意I臨時表和表變量的用法,慎用游標和觸發(fā)器,盡量使用索引等。(5)硬件優(yōu)化:RAID(獨立磁盤冗余陣列)是由多個磁盤驅動器(一個陣列)組成的磁盤系統。通過將磁盤陣列當作一個磁盤來對待,基于硬件的RAID允許用戶管理多個磁盤。使用基于硬件的RAID與基于操作系統的RAID相比較可知,基于硬件的RAID能夠提供更佳的性能,如果使用基于操作系統的RAID,那么它將占據其他系統需求的CPU周期,通過使用基于硬件的RAID,用戶在不關閉系統的情況下能夠替換發(fā)生故障的驅動器。利用數據庫分區(qū)技術,可均勻地把數據分布在系統的磁盤中,平衡I/0訪問,避免I/0瓶頸等。(6)事務處理調優(yōu):數據庫的日常運行過程中,可能面臨多個用戶同時對數據庫的并發(fā)操作而帶來的數據不一致的問題,如:丟失更新、臟讀和不可

溫馨提示

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

最新文檔

評論

0/150

提交評論