




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
【2021年】廣東省江門市全國計算機等級
考試數(shù)據(jù)庫技術(shù)真題(含答案)
學(xué)校:班級:姓名:考號:
一、1.選擇題(10題)
1.對有14個數(shù)據(jù)元素的有序表R[14]進行折半搜索,搜索到R[3]的關(guān)
鍵碼等于給定值,此時元素比較順序依次為
A.R[0],R[l],R[2],R[3]
B.R[0],R[13],R[2],R[3]
C.R[6],R[2],R[4],R[3]
D.R[6],R[4],R[2],R[3]
2.下列不屬于SYBASE產(chǎn)品的是
A.AdaptiveServerEnterprise
B.DB2WarehouseManager
C.AdaptiveServerReplication
D.AdaptiveServerConnect
3.CPU狀態(tài)分為目態(tài)和管態(tài)兩種,從目態(tài)轉(zhuǎn)換到管態(tài)的惟一途徑是()。
A.運行進程修改程序狀態(tài)字B.中斷屏蔽C.中斷D.進程調(diào)度程序
4.下面關(guān)于數(shù)據(jù)庫系統(tǒng)基于日志的恢復(fù)的敘述中,哪一種說法是正確的?
A.利用更新日志記錄中的改前值可以進行UNDO,利用更新日志記錄中
的改前值可以進行REDO
B.利用更新日志記錄中的改前值可以進行UNDO,利用更新日志記錄中
的改后值可以進行REDO
C.利用更新日志記錄中的改后值可以進行UNDO,利用更新日志記錄中
的改前值可以進行REDO
D.利用更新日志記錄中的改后值可以進行UNDO,利用更新日志記錄中
的改后值可以進行REDO
5.若事務(wù)T對數(shù)據(jù)R已加X鎖,則其他事務(wù)對數(shù)據(jù)R
A.可以加S鎖不能加X鎖B.不能加S鎖可以加X鎖C.可以加S鎖也
可以加X鎖D.不可以加任何鎖
6.由于關(guān)系模式設(shè)計不當(dāng)所引起的插入異常指的是
A.兩個事務(wù)并發(fā)地對同一關(guān)系進行插入而造成數(shù)據(jù)庫不一致
B.由于碼值的一部分為空而不能將有用的信息作為一個元組插入到關(guān)
系中
C未經(jīng)授權(quán)的用戶對關(guān)系進行了插入
D.插入操作因為違反完整性約束條件而遭到拒絕
7.數(shù)據(jù)字典是數(shù)據(jù)庫分析階段最重要的工具之一,其基本功能是()。
A.數(shù)據(jù)管理B.數(shù)據(jù)查詢C.數(shù)據(jù)定義D.數(shù)據(jù)維護
8.游標是系統(tǒng)為用戶開設(shè)的一個
A.內(nèi)存空間B.數(shù)據(jù)緩沖B2c.外存空間D.虛擬空間
9.在TCP/IP參考模型中,不屬于應(yīng)用層協(xié)議的是
A.IP協(xié)議B.FTP協(xié)議C.SMTP協(xié)議D.HTTP
10.線性鏈表不具有的特點是
A.隨機訪問B.不必事先估計所需存儲空間大小C.插入與刪除時不必
移動元素D.所需空間與線性表長度成正比
二、填空題(10題)
11.客戶機/服務(wù)器模式在實現(xiàn)中需要解決的主要問題有:標識一個特定
的服務(wù)、響應(yīng)并發(fā)請求和服務(wù)器程序的O
12.若線性表的長度經(jīng)常發(fā)生變化,那么該線性表應(yīng)采用的存儲結(jié)構(gòu)是那
13.在關(guān)系模式R<U,F>中,如果X-Y且存在X的一個真子集X',
有X,一Y,則稱Y對X的依賴為_____函數(shù)依賴。
14.在關(guān)系數(shù)據(jù)模型中,二維表的列稱為屬性,二維表的行稱為o
15.計算機應(yīng)用技術(shù)領(lǐng)域包括科學(xué)計算、事務(wù)處理、過程控制、輔助工程、
網(wǎng)絡(luò)應(yīng)用和多媒體的應(yīng)用等七大領(lǐng)域。
16.在頁式存儲管理中,存放在高速緩沖存儲器中的部分頁表稱為
17.設(shè)F是Tl、T2和T3三棵樹組成的森林,與F對應(yīng)的二叉樹為B,
已知ThT2和T3的結(jié)點個數(shù)分別為nl,n2和n3,則二叉樹B的根結(jié)
點左干樹和右干樹中結(jié)點的個數(shù)分別為【】和【】
18.概念結(jié)構(gòu)設(shè)計的方法通常有自頂向下、自底向上、逐步擴張和【】。
19.在關(guān)系數(shù)據(jù)庫規(guī)范化理論的研究中,在函數(shù)依賴的范疇內(nèi)達
到了最高的規(guī)范化程度。
20.SQLServer數(shù)據(jù)管理系統(tǒng)中常用的性能工具包括和。
三、單選題(10題)
21.能夠?qū)owerDesigner中所有模型信息只讀訪問的模塊是()。
A.A.ProcessAnalyst
B.DataArchitect
C.Viewer
D.WarehouseArchitecture
22.邏輯文件存放在存儲介質(zhì)上時,采用的組織形式是與什么有關(guān)?
A.邏輯文件結(jié)構(gòu)B.存儲介質(zhì)特性C.主存儲器管理方式D.分配外設(shè)方
式
23.下列關(guān)于SQLServer數(shù)據(jù)庫用戶權(quán)限的說法中,錯誤的是_________
A.數(shù)據(jù)庫用戶自動具有該數(shù)據(jù)庫中全部用戶數(shù)據(jù)的查詢權(quán)
B.通常情況下,數(shù)據(jù)庫用戶都來源于服務(wù)器的登錄賬戶
C一個登錄賬戶可以對應(yīng)多個數(shù)據(jù)庫中的用戶
D.數(shù)據(jù)庫用戶都自動具有該數(shù)據(jù)庫中public角色的權(quán)限
24.影響優(yōu)化器的主要因素有:
A.由于現(xiàn)有索引不足,導(dǎo)致排序索引中不包括一個或幾個待排序的列。
B.Groupby和orderby子句中列的次序與索引次序一致。排列的列來自
不同的表。
C.建立的索引文件太多。
D.事務(wù)處理太多
25.某數(shù)據(jù)庫應(yīng)用系統(tǒng)中,數(shù)據(jù)庫管理員發(fā)現(xiàn)某個查詢功能是用多表連接
操作實現(xiàn)的,此操作性能較差。在保證功能不變的前提下,若要提高該
查詢的執(zhí)行效率,下列方法中可行的是()
A.將此查詢語句放置在視圖中,使用視圖實現(xiàn)該查詢操作
B.修改實現(xiàn)此功能的查詢語句,將連接查詢改為嵌套查詢
C.將此功能涉及到的表進行合并,然后對合并后的表進行查詢
D.將此查詢語句放置在存儲過程中,通過調(diào)用存儲過程實現(xiàn)該查詢操作
26.為了考慮安全性,每個部門的領(lǐng)導(dǎo)只能存取本部門員工的檔案,為此
DBA應(yīng)創(chuàng)建相應(yīng)的()o
A.視圖(view)B.索引(index)C.游標(cursor)D.表(table)
27.在數(shù)據(jù)庫的數(shù)據(jù)模型中有()
A.網(wǎng)狀模型、層次模型、關(guān)系模型
B.數(shù)字型、字母型、日期型
C.數(shù)值型、字符型、邏輯型
D.數(shù)學(xué)模型、概念模型、邏輯模型
28.在登錄日志文件時,應(yīng)該
A.將更新數(shù)據(jù)庫與登錄文件兩個操作同時完成
B.將更新數(shù)據(jù)庫與登錄文件兩個操作按隨機的順序完成
C.先寫數(shù)據(jù)庫的更新,后登錄日志文件
D.先登錄日志文件,后寫數(shù)據(jù)庫的更新
29.某數(shù)據(jù)庫應(yīng)用系統(tǒng)使用SQLServer2008作為數(shù)據(jù)庫平臺。在系統(tǒng)運
行期間,用戶反映某更新操作很慢,無法正常完成業(yè)務(wù)。系統(tǒng)工程師分
別在用戶的客戶機和數(shù)據(jù)庫服務(wù)器上使用數(shù)據(jù)庫管理系統(tǒng)自帶的客戶
端工具執(zhí)行此更新操作語句,發(fā)現(xiàn)該語句執(zhí)行后長時間無響應(yīng)。經(jīng)檢查
數(shù)據(jù)庫服務(wù)器CPU使用率小于1%,磁盤10也非常小。造成此現(xiàn)象可
能的原因是()
A.客戶機到數(shù)據(jù)庫服務(wù)器的網(wǎng)絡(luò)故障
B.更新操作涉及到的表沒有建立主碼
C.更新的字段沒有建立有效的索引
D.更新操作涉及到的數(shù)據(jù)被鎖定
30.下面關(guān)于關(guān)系的性質(zhì)描述正確的是
A.每列中的分量可以來自不同的域
B.一個關(guān)系中可以有相同的元組
C.每一個分量必須是不可分的數(shù)據(jù)項
D.不同列的分量必須來自相同的域
四、C語言程序設(shè)計題(10題)
31.將文件in.dat中的200個整數(shù)讀至數(shù)組XX中。請編制jsValue函
數(shù),要求:求出數(shù)組XX中的數(shù)值為奇數(shù)的個數(shù)cntl和數(shù)值為偶數(shù)的個
數(shù)cnt2以及數(shù)組XX下標為奇數(shù)的元素值的算術(shù)平均值pjo
結(jié)果cntl,cnt2,pj輸出到out.dat中。注意:部分源程序存在test.c
文件中。請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、主函數(shù)main、讀函
數(shù)read_dat和輸出函數(shù)writeDat的內(nèi)容。
1tlnclude<stdio.h>
2,defineN200
3Intchtl?5t2rxx[NJ;
4floatpj;〃平均值
5voidwriteDat();
6voidjsValue()
7
e
9
/?ro4d_d?t(intxxlN”/敷典文ftiiutot中的200個?收0至IWlu中?/
iovoidread_dat(intxx[N])
ii(
12intirj;
13FILE*fp;
w
14fp?fopen(**in.d3t,"r");
15for(1?0;i<20;
16(
17for(j-0;j<10;
18
19fscanf(fp?"dj,^xx(i*10*jJ);//從文件n&i中it取一個整數(shù)打入敷饌元索xx【l?107】中
20printf("%d",xx[i*10*j));
21]
22printf(*\nw);
23]
24fclose(fp);
25
26voidmain()
27(
28read_dat(xx);
29;jsValue();
30?printf(w\n\ncntl-%d,cnt2?*d,p]?56.2f\n",cntl/ent2,;
iPj>
31IwriteDat();
?/?樽計算笳果end.cm2,pj■出JNouLdai中,/
33ivoidwriteDat()
34y
351FILE*fw;
36;fw-fopen("out.dat*\Hww);
w〃?討寫人到中
37!fprintf(fwr"%d\n%d\n%6.2f\n9cnt2,pj);cmlcm2,ouLdai
38ifclose(fw);
39;1
32.已知數(shù)據(jù)文件in.dat中存有200個四位數(shù),并已調(diào)用讀函數(shù)readDat
把這些數(shù)存入數(shù)組a中,請考生編制一函數(shù)jsVal,其功能是:依次從數(shù)
組a中取出一個四位數(shù),如果該四位數(shù)小于該四位數(shù)以后的連續(xù)五個數(shù)
且該數(shù)是偶數(shù)(該四位數(shù)以后不滿五個數(shù),則不統(tǒng)計),則統(tǒng)計出滿足此
條件的個數(shù)ent,并把這些四位數(shù)存入數(shù)組b中,而后對數(shù)組b進行升
序排序,最后調(diào)用寫函數(shù)writeDat把結(jié)果ent以及數(shù)組b中符合條件的
四位數(shù)輸出到Out.dat文件中。
注意:部分源程序存在test.c文件中。
程序中已定義數(shù)組:a[200],b[200],已定義變量:ent
請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、主函數(shù)main、讀函數(shù)readDat
和寫函數(shù)writeDat的內(nèi)容。
1-tinclude<stdio.h>
2(^defineMAX200〃定義定變?MAXK值*于2G0
3;inta(MAX)rb(MAXl,ent-0;〃代初始值為0.定義全局整EAIMAXI,b(MKX!?<?cnt
4!voidwriteDat();m數(shù)的說明語句
5jvoidjsVal()
6;(
8L,
J/?”adDat()從數(shù)據(jù)文件m.dat中通取200個網(wǎng)位數(shù)存入數(shù)組■中?/
9jvoidreadDat()
10i(
11jint1;
12jFILEefp;
w
13:fp-fopen(in.dafr
14;for(1a0;1<MAX;i++)
15ifscanf(fpr"Qd".;
16;fclose(fp);
17:?
18?voidmam0
19;(
20!inti;
21?readDat();
22:jsVal(>;〃謂陽)滴敝,實照AIH要求的功能
23\printff”滿足條件的數(shù)7d\rT,:nt);
24ifor(i-0;i<ent;“?)
25?print1(**%d",b[11);
26?printf(0\nM>;
21;writeDatO;
28i)
;/?響敢wntcIXHHe怙里mi以及數(shù)期b中衿介條件的四位敷,出到out.dai文件中?/
29;voidwrlteDat()
30!{
31;FILEafp:
32?inti;
ww
33?fp?fopen(out.datr”“);
34;fprintf(fp,7d\M,ent);
35!ford■0;1<ent;"?)
R
361fprintf(fprid\n**rb(i]i;
37jfclose(fp);
385)
33.已知在文件in.dat中存有100個產(chǎn)品銷售記錄,每個產(chǎn)品銷售記錄
由產(chǎn)品代碼dm(字符型4位),產(chǎn)品名稱me(字符型10位),單價dj(整
型),數(shù)量si(整型),金額je(長整型)五部分組成。其中:金額=單價*數(shù)
量。函數(shù)ReadDat讀取這100個銷售記錄并存入結(jié)構(gòu)數(shù)組sell中。請編
制函數(shù)SortDat,其功能要求:按金額從大到小進行排列,若金額相等,
則按產(chǎn)品代碼從大到小進行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中。
最后main函數(shù)調(diào)用函數(shù)WriteDat把結(jié)果輸出到文件out.dat中。
提示:若中間變量為PROtemp,則可以直接使用結(jié)構(gòu)賦值語句進行解
題。
例如:sell[i]=temp;
注意:部分源程序存放在test.c文件中。
請勿改動主函數(shù)main、讀函數(shù)ReadDat和輸出函數(shù)WriteDat的內(nèi)容。
1;llnclude<stdlo.h>
2!IInclude<string.h>
3?finclude<stdlib.h>
4!fdefineMAX100
5jtypedefstruct
6;*
7!chardm(5];八產(chǎn)品代碼〃
8;charme(11];/?產(chǎn)品名林?/
9?intdj;單鈔?/
10;intsi;/?ft*?/
11ilongje;/?金??/
12!}PRO;
13jPROsell[MAX];
14;voidReadDat();
15!voidWriteDat();
16?voidSortDat()
ni<
20!voidmain(>
21[(
22'memset(sellt0,sizcof(sell));
23?ReadDat();
24iSortDatO;
25!WriteDat(”
26;1
27;voidReadDat()
28;(
29FILE#fp;
30charstr(80)9ch[1I];
31inti;
32fp,fopen("in.dat",Hrw>;
33for(l?0;1<100;1+?)
34(
35fgets80.fp);
36memcpy(sell(1).dm,stt/4);
37metncpy(sell(i).me,atr*4f10);
38metnepy<ch.str*14.4);ch[41-0;
35sell(1?.dj■atol(cb);
40oteincpy(ch?str*18f5);ch(Sl*0;
41sell(i).91-atol(ch);
42sailfl).je?(long)sell[i]?dj?sell(i].si;
43)
44fclose(fp);
45)
46voidWritoDat0
47
48FILE*fp;
49int1;
50fp?fopen("out?da**?**);
51fox(1?0/1<100;
52I
53fprlntf(fp,"%BIs%4d%SdH01d\n**,9?11(1].dmrsell(i),me,sell(1j.djrsell(1).slf
sellfi].je);
55fclose(fp);
56
34.函數(shù)readDat是從文件in.dat中讀取20行數(shù)據(jù)存放到字符串?dāng)?shù)組
XX中(每行字符串長度均小于80)。請編制函數(shù)jsSort,其函數(shù)的功能
是:以行為單位對字符串按下面給定的條件進行排序,排序后的結(jié)果仍
按行重新存入字符串?dāng)?shù)組XX中,最后調(diào)用函數(shù)writeDat把結(jié)果XX輸
出到文件out.dat中。
條件:字符串從中間一分為二,左邊部分按字符的ASCII值升序排序,
右邊部分不變,左邊經(jīng)排序后再與右邊部分進行交換。如果原字符串長
度為奇數(shù),則最中間的字符不參加處理,字符仍放在原位置上。
例如位置012345678
源字符申dcbahgfe
432198765
則處理后’7符中hgfcabcd
876591234
注意,部分源程序存在Ex文件中?
請勿改動數(shù)據(jù)文件in.dn中的任何數(shù)據(jù).主函數(shù)mainO.選曲數(shù)retdDatO和寫曲數(shù)wrisDatO的內(nèi)容.
1Iinclude<stdio.h>
*include<string.h>
3jvoidreadDat();
4;voidwriteDat();
5!charxx[201[801;
6;voidjsSort()
7i(
B;
9\)
10;voidmain()
12!readDat();
13?jsSort();
14!writeDat();
15j)
!”從文件中取。"數(shù)據(jù)存放到字符市軟機中?/
?w.dai92xx
16ivoidreadDat()
17;(
18?FILE,in;
19;int1■0;
20*char*p;
21;in-fopen(win.datwf"r");
22!whiled<20“fqets(xx[l),80,in)!■NULL)
23\(
24-p■strchr(xx(i]r?\n*);
25jif(p)*p?0;
26?
27?)
28;(close(in);
29;}
:/?紀站果xx?出現(xiàn)文件om&t中?/
30-voidwriteDat()
31;(
32-FILE?out;
33jint1;
34;out-fopen(*out.datH,**wn);
35ifor(1-0;i<20;[?+)
36i1
37!printf("IsSn-*,xx(1]);
38?fprintf(out,w%s\nM/xx[1B;
39jJ
40;fclose(out);
35.函數(shù)ReadDat實現(xiàn)從文件in.dat中讀取一篇英文文章,存入到無符
號字符串?dāng)?shù)組XX中;請編制函數(shù)encryptChar,按給定的替代關(guān)系對數(shù)
組XX中的所有字符進行替代,其替代值仍存入數(shù)組)xx的對應(yīng)的位置
上,最后調(diào)用函數(shù)wmeDat把結(jié)果xX輸出到文件out.dat中。
替代關(guān)系:f(p)=p*Umod256,mod為取余運算,P是數(shù)組xx中某一個
字符的ASCII值,f(p)是計算后無符號的整型值(注意:中間變量定義成
整型變量),如果計算后f(p)值小于等于32或f(p)對應(yīng)的字符是小寫字
母,則該字符不變,否則用f(P)替代所對應(yīng)的字符。
注意:部分源程序存放在test.c文件中,原始數(shù)據(jù)文件存放的格式是:
每行的寬度均小于80個字符,含標點符號和空格,并也按此替代關(guān)系
進行處理。
請勿改動住數(shù)main、讀數(shù)據(jù)函數(shù)ReadDat和輸出數(shù)據(jù)函數(shù)WriteDat的
內(nèi)容。
?include<stdio.h>
Iinclude<string.h>
3?include<ctype.h>
4unsignedcharxx[50][80];
5intntaxline-0;/?文章的總行敷?/
6intReadDat(void);
7voidWriteDat(void);
8voidencryptChar()
9
10
11
12jvoidmain<)
13i(
14;if(ReadDat0)
15i{
16printf(”數(shù)據(jù)文件in.dat不能打開!\門\007“”
17return;
18\I
19jencryptCharO;
20?WriteDat();
21!!
j/?從文件ilL&l中讀取??英文文■?存f無符號字料刪數(shù)煙U中〃
22?intReadDat(void)
23!(
24\FILE*fp;
25!inti-0;
26iunsignedchar*p;
27if((fp-fopen("in.daf,wr-))-NULL)
28return1;
29?while(fgeta(xx[i),80ffp)!?NULL)
30;
31!p-strchr(xx(i]t?\n?
32\if(p)*p*0;
33\
34J
35;maxline-i;
36!fclose(fp);
37\return0;
38I}
八圮雄果XX?出JM文件CHlLdai中?/
39;voidWriteDat(void)
401(?
41!FILE*fp;
42;inti;
wwM
43!fp-fopen("out.datrw);
44ifor(i-0;i<maxline;"?)
?j
w
46!printtC%s\nrxx(i]);
47ifprintf(tp,7s\n",xx[ij);
向>
49?fclose(fp);
36.已知數(shù)據(jù)文件INI.DAT和IN2.DAT中分別存有100個兩位十進
制數(shù),并且已調(diào)用讀函數(shù)readDat把這兩個文件中的數(shù)存入數(shù)組a和b
中,請考生編制一個函數(shù)JsVal,實現(xiàn)的功能是依次對數(shù)組a和b中的數(shù)
按條件重新組成一個新數(shù)并依次存入數(shù)組C中,再對數(shù)組C中的數(shù)按
從小到大的順序進行排序,最后調(diào)用輸出函數(shù)writeDat把結(jié)果C輸出到
文件out.dat中。組成新數(shù)的條件:如果數(shù)組a和b中相同下標位置的
數(shù)均是奇數(shù),則數(shù)組a中十位數(shù)字為新數(shù)的千位數(shù)字,個位數(shù)字仍為新
數(shù)的個位數(shù)字,數(shù)組b中的十位數(shù)字為新數(shù)的百位數(shù)字,個位數(shù)字為新
數(shù)的十位數(shù)字,這樣組成的新數(shù)并存入數(shù)組C中。
例如,at123124152115
b1324517271815
c:MSI12751155
律序后加IIS512753451
注意?部分源程序存在EC文件中.
界序中已定義;叩00卜b(ioo)和?1時?
請勿改動數(shù)期文件INI.DAT和1N2,DA丁中的任何數(shù)據(jù),主函數(shù)設(shè)曲數(shù)readDatQ和耳啪敗writeDilO的內(nèi)容.
11linclude<stdio?h>
2?*defln<MAX100
3-intalMAXl.b(MAXHc(MAXJ;
4-intent-0;/?奪放制化8件數(shù)的個收?/
5;voidjsValC
/?lEftWX#IN1.DATIDN2.DAT中80100個再依十建?我存入也.b中?/
voidreadDat()
inti)
13,fp?fopen("inl"r")
14!for(1?0;1<MAX;1?+)
15ifscanf(fp,
16!{close(fp);
17jfp?fopen("in2.dat","r**)
18-ford-0;1<KAX;
19?fscanf(fp4"Qd",6b[1]);
20;fclose<fp);
21;\
22ivoidmain()
231(
24;inti;voidwrlteDat();
25-for(1-0;i<MAX;
26jCtl]-0;
27-readDat();
28!jsVal();
29\for(i-0;1<MAX“C[i
30:prlntt(*id\n",c(i));
31iwritoDatOi
32j)
I/?紀綸最數(shù)忸c?出則文介中〃
33?voidwriteDat()
34?(
35JFILE*fp;
36!intil
fp?fopen("out.dit**,"D;
38!for(1-0/i<MAX6,c(l)>0/11??)
39ifprlntf(fp,e(i)):
40\fclose(fp);
41;)
37.
函數(shù)ReadDat實現(xiàn)從文件in.dat中讀取一篇英文文章存入到字符串?dāng)?shù)
組XX中,請編制函數(shù)ConvertCharD,其函數(shù)的功能是:以行為單位把
字符串中的所有小寫字母改寫成該字母的上一個字母,如果是字母a,
則改寫成字母Z,其他字符保持不變。把已處理的字符串仍按行重新存
入字符串?dāng)?shù)組XX中。最后main函數(shù)調(diào)用函數(shù)WriteDat把結(jié)果xx輸出
到文件out.dat中。例:原文:Adb.Bcdza
abck.LLhj結(jié)果:Aca.Bbcyzzabj.LLgi原始數(shù)據(jù)文件存放的格式是:
每行的寬度均小于80個字符,含標點符號和空格。
注意:部分源程序存放在test.c文件中。
請勿改動主函數(shù)main、讀函數(shù)ReadDatO和輸出函數(shù)WriteDat的內(nèi)容。
4?Intmaxline-0;/?文聿的總行敷?/
5?intReadDat(void);
6;voidWriteDat(void);
!,?以后為?位忙字符串中的析科小耳學(xué)用改寫成力學(xué)陽的上一個字用,如量能?用M修改寫A字艱加M他字符?!凡豢?/
7?voidConvertCharD(void)
8
9
10
11;voidmain()
12\I
13?if(ReadDatO)
14I(
15printf("數(shù)據(jù)文件in.dat不能打開!\n\007");
16return;
17|I
18?ConvertCharD(>;
19\WriteDatO;
20!J
;“從文件m&t中it以?英文文拿存入期字符mxx中。/
21!intReadDat(void)
I
22?(
23!FILE-fp;
24iint1-0;
25char*p;
26?if((fp-fopen("ln.dat*r*r**))-NULL)
27return1;
28?while(fget3(xx[1],80?fp)!?NULL)
29j(
30p?strcbr(xx(1],*\n?I;
31if(p)*p?0;
32!?*;
33
34;tnaxline■i;
35!fclose(fp);
36jreturn0;
37
;/結(jié)果H■巾*文件am中?/
38\voidWriteDat(void)
39)(
40FILEefp;
41*inti;
42fp-topen(wout.dat*,"w**);
43for(1-0;1<moxllno;)
44i(
45printfxx(1|;
46fprintf(fpr"IsXn",xx(i));
47
48?fcloae(fp);
49
38.設(shè)有n個人圍坐一圈并按順時針方向從1到n編號,從第s個人開
始進行1到m的報數(shù),報數(shù)到第m個人,此人出圈,再從他的下一個
人重新開始1到m的報數(shù),如此進行下去直到所有的人都出圈為止?,F(xiàn)
要求按出圈次序,每10人一組,給出這n個人的順序表。請考生編寫
函數(shù)Josegh(void)實現(xiàn)此功能,并調(diào)用函數(shù)writeDat,把結(jié)果P輸出到文
件out.dat中o
設(shè)n=100,s=l,m=10o
①將1到n個人的序號存入一維數(shù)組P中;
②若第i個人報數(shù)后出圈,則將p1]置于數(shù)組的倒數(shù)第i個位置上,而原
來第i+1個至倒數(shù)第i個元素依次向前移動一個位置;
③重復(fù)第②步直至圈中只剩下p[l]為止。
注意:部分源程序已經(jīng)給出。
請勿改動主函數(shù)main和輸出數(shù)據(jù)函數(shù)writeDAT的內(nèi)容。
Iinclude<stdio.h>
idefineN100
*defineS1
*defineM10
Sintp(100]tnrs,m;
6voidWriteDat(void);
voidJoseqh(void)
6
9
10
voidmain()
13m?M;
14nwN;
15smS;
16Josegh();
17WriteDat();
18
,?把結(jié)粵p?出到文件outdai<1?*/
19voidWriteDat(void)
(
int1;
22FILEefp;
23fp?fopen("out.dat*,;
八以史修的方式,以1。個數(shù)據(jù)為-閭把friftp【川■出到屏幕相文件ouLdat中?/
24for;i>?0;i--)
25
26printf("%4d",p(i});
27;fprintf(fp,74d",p(l]);
28if(i%10-0)〃如果i魚被10整除,射■出一個回東換行檢
29?(
30]printf(*\nM);
315fprintf(fp^"\n");
32i}
335)
34;fclose(fp);
35;1
39.已知在in.dat中存有若干個(個數(shù)<200)四位數(shù)字的正整數(shù),函數(shù)
ReadDat讀取這若干個正整數(shù)并存入數(shù)組XX中。請編制函數(shù)CalValue,
其功能要求:
1.求出該文件中共有多少個正整數(shù)totNum;
2.求這些正整數(shù)右移1位二進制位后,產(chǎn)生的新數(shù)是奇數(shù)的數(shù)的個數(shù)
totCnt,以及滿足此條件的這些正整數(shù)(右移前的值)的算術(shù)平均值totPjz。
最后main函數(shù)調(diào)用函數(shù)WriteDat把所求的結(jié)果輸出到文件out.dat
中。
注意:部分源程序存放在test.c文件中。
請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù),主函數(shù)main、讀函數(shù)ReadDat
和輸出函數(shù)WriteDat的內(nèi)容。
?include<stdio.h>
2!IdefineMAXNUM200
3\intxx[MAXNUM|;
4;inttotNum-0;〃文件In.dau中年有名少個正整數(shù)
5;mttotCnt■0;〃符合條件的正整數(shù)的個被
6;doubletotPjt-0.0;〃平
7;intReadDat(void);
6;voidWriteDat(void);
voidCalValue(void)
11;
12!
13;voidmalnO
14;
inti;
16for(i-0;i<MAXNUM;if
17xx(1]-0;
18if(ReadDat())
19
20prlntf("數(shù)據(jù)文件in.dat不能打開!\007\n");
21return;
22
23CalValue();
24printsL文件in.dat中共有正整數(shù)7d個\n",totNum);
25print。L符合條件的正整數(shù)的個數(shù)-、d個\n,tocCnt);
26printf平均值=$?21f\n?,totPjz);
27WriteDatO;
28
八源取這若干個正■敏并存入室ifiix中〃
29IntReadDat(void)
30
31FILE*fp;
32inti-0;
33if((fp-fopen(-In.dat-,-r-D-NULL)
34return1;
35while(!feof(fp))
",
37fscanf(fp,7d.e.&xx(i+>]);
38
39fclose(fp);
40return0;
41
/?把計翼站累存入文件iut.dat中〃
42voidWriteDat(void)
43
44FILE*fp;
45fp-fopen(**out.dat",**w0>;
w
46fprintf(fp,*%d\n%d\ni.21f\n,totNum,totCnt,totPji);
47fclose(fp);
48
40.已知數(shù)據(jù)文件in.dat中存有200個四位數(shù),并已調(diào)用讀函數(shù)readDat
把這些數(shù)存入數(shù)組a中,請考生編制一函數(shù)jsVal,其功能是:把一個四
位數(shù)的個位數(shù)位置上的值減去千位數(shù)位置上的值再減去百位數(shù)位置上
的值最后減去十位數(shù)位置上的值,如果得出的值大于等于零且原四位數(shù)
是偶數(shù),則統(tǒng)計出滿足此條件的個數(shù)ent,并把這些四位數(shù)按從小到大
的順序存入數(shù)組b中,最后調(diào)用寫函數(shù)writeDat把結(jié)果ent以及數(shù)組b
中符合條件的四位數(shù)輸出到Out.dat文件中。
注意;部分厚程序存在g.C文件中.
程序中已定義數(shù)組:4200],H200].已定義變量,ent
請勿改動數(shù)據(jù)文件in-dax中的任何數(shù)據(jù)、主函效讀函數(shù)nadDat()和寫曲數(shù)writeDatO的內(nèi)容。
1jImcludo<stdio.h>
2\IdefineMAX200
3inta(MAX],b[MAXJ/ent
4voidwriteDat();
voidjsVal()
6
7
8
9voidreadDat()
10(
11inti;
FILE*fp;
fp*fopen("in.dat",wr");
14for(i-0;i<MAX;i++l
15fscanf(fp,7d",[iI);
16fclose(fp);
17}
18voidmain()
19I
20inti;
21readDat();
22jsVal();
23prin"「澗足條件的敷。ent);
24for(i-0;i<ent;
25printf(?*%(!”,bill);
26printf(w\nw);
27writeDat();
26I
29voidwriteDat()
30
31FILEefp;
32intij
33fp-fopen("out.datw,"w");
nn
34fprintf(fp,%d\necnt);
35for(1?0;i<ent;ix)
36fprintf(fpr”d\n",b(x));
37fclose(fp);
38
五、設(shè)計與應(yīng)用題(2題)
41.現(xiàn)有論文和作者兩個實體,論文實體的屬性包括題目、期刊名稱、年
份、期刊號;作者實體的屬性包括姓名、單位、地址;一篇論文可以有
多個作者,且每一位作者寫過多篇論文,在每一篇論文中有作者的順序
號。請完成以下操作:(1。分)(1)畫出E-R圖。(2)將E-R圖轉(zhuǎn)換成
關(guān)系模式,并指出每個關(guān)系模式的主鍵(加下劃線)和外鍵(加波浪線)。
42.設(shè)某連鎖商店數(shù)據(jù)庫中有關(guān)系模式R:R(商店編號,商品編號,庫
存數(shù)量,部門編號,負責(zé)人)如果規(guī)定:每個商店的每種商品只在一個
部門銷售,每個商店的每個部門只有一個負責(zé)人,每個商店的每種商品
只有一個庫存數(shù)量。(10分)(1)請根據(jù)上述規(guī)定,寫出關(guān)系模式R的
函數(shù)依賴集;(2)請給出關(guān)系模式R的候選碼;(3)請說明關(guān)系模式R
屬于第幾范式,并給出理由;(4)請將R分解成滿足3NF的關(guān)系模式。
六、單選題口分](2題)
43.現(xiàn)有SQLServer2008數(shù)據(jù)庫服務(wù)器,其中的一個數(shù)據(jù)庫占用80GB
空間,另有一臺用于備份的計算機,該機器上有4個大小均為50GB的
硬盤分區(qū)。若要將此數(shù)據(jù)庫完全備份到該計算機上,則()o
A.不能實現(xiàn),因為每個分區(qū)上的空間都不夠80GB
B.可以先建立一個備份設(shè)備,這個設(shè)備分別在4個分區(qū)上各占用20GB
空間,然后再用此設(shè)備備份數(shù)據(jù)庫
C.可以先在每個分區(qū)上分別建立一個備份設(shè)備,指定每個設(shè)備的大小均
為20GB,并建立一個包含這4個備份設(shè)備的備份媒體集,最后再用此
備份媒體集備份數(shù)據(jù)庫
D.可以先在每個分區(qū)上分別建立一個不用指定大小的備份設(shè)備,然后將
數(shù)據(jù)庫同時備份到這4個備份設(shè)備上
44.關(guān)于優(yōu)化查詢說法正確的是()。
A.避免或簡化排序的目的是實現(xiàn)查詢優(yōu)化
B.在保證數(shù)據(jù)庫一致性的前提下,將頻繁操作的多個可以分割的處理過
程放在一個存儲過程中,這樣可以大大提高系統(tǒng)的響應(yīng)速度
C.使用臨時表會占用較多的系統(tǒng)資源,尤其對于大規(guī)模并發(fā)量的情況下,
很容易使得系統(tǒng)資源耗盡而崩潰
D.相關(guān)子查詢的使用可以加速查詢
參考答案
1.C解析:折半查找是一種效率較高的查找方法,要求線性表是有序表。
基本思想是:首先將待查的K值和有序表R[0]到R[n-1]的中間位置mid
上的結(jié)點的關(guān)鍵字進行比較,若相等,則查找完成;否則,若R[mid].key>K,
則說明待查找的結(jié)點只可能在左子表R⑼到R[mid-1]中,我們只要在左
子表中繼續(xù)進行折半查找,若R[mid].key<K,則說明待查找的結(jié)點只可能
在右子表R[mid+1]到R[n-1]中,我們只要在右子表中繼續(xù)進行折半查找。
這樣,經(jīng)過一次關(guān)鍵字比較就縮小一半的查找空間。如此進行下去,直到
找到關(guān)鍵字為K的結(jié)點,或者當(dāng)前的查找區(qū)間為空(表示查找失敗)。根
據(jù)這個思想,查找的順序即為R⑹,R[2],R[4],R[3]。
2.B解析SYBASE數(shù)據(jù)庫產(chǎn)品有:SYBASEEP,AdaptiveServerEnterprise,
AdaptiveServerReplication,AdaptiveServerConnect以及異構(gòu)數(shù)據(jù)庫互聯(lián)
選件。注意:DB2WarehouseManager屬于IBM的DB2產(chǎn)品,故B)選項
正確。掌握SYBASE數(shù)據(jù)庫系統(tǒng)的功能及其特點。
3.C解析:由于計算機系統(tǒng)的硬件區(qū)分目態(tài)和管態(tài),用戶程序在目態(tài)運
行時不能直接使用I/O指令等特權(quán)指令,只有當(dāng)用戶程序執(zhí)行到產(chǎn)生一
次中斷后,使機器在原來的目態(tài)下執(zhí)行用戶程序變成在管態(tài)下執(zhí)行操作
系統(tǒng)的系統(tǒng)調(diào)用程序。所以從目態(tài)轉(zhuǎn)移到管態(tài)的惟一途徑是中斷。
4.B解析:UNDO:對撤銷隊列中的各個事務(wù)進行撤銷處理,處理方法
是:反向掃描日志文件,對每個UNDO事務(wù)的更新操作執(zhí)行逆操作,
即將日志記錄中“更新前的值”寫人數(shù)據(jù)庫。
5.D解析:當(dāng)一個事物欲對某個數(shù)據(jù)對象操作,可以對該對象加鎖,取
得對數(shù)據(jù)的一定控制,同時限制其他事物對該對象進行操作。
6.B解析:本題考查關(guān)系數(shù)據(jù)庫規(guī)范化理論的基本概念,參見4.4.1節(jié)
“關(guān)系數(shù)據(jù)庫的規(guī)范化理論”。關(guān)系模式插入異常是指違反了實體完整性
約束,主碼值為空而導(dǎo)致的元組無法插入的異常。正確答案為B。
7.C解析:數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的集合,數(shù)據(jù)字典通過對數(shù)
據(jù)項和數(shù)據(jù)結(jié)構(gòu)的定義來描述數(shù)據(jù)流和數(shù)據(jù)存儲的邏輯內(nèi)容。
8.B解析:SQL語言與宿主語言具有不同的數(shù)據(jù)處理方式。SQL語言是
面向集合的,一條SQL語句原則上可以產(chǎn)生或處理多條記錄,而宿主
語言是面向記錄的,一組主變量一次只能存放一條記錄。所以,僅使用
宿主變量并不能完全滿足SQL語句向應(yīng)用程序輸出數(shù)據(jù)的要求,為此,
嵌入式SQL引入了游標的概念,用游標來協(xié)調(diào)兩種不同的處理方式。
游標是系統(tǒng)為用戶開設(shè)的一個數(shù)據(jù)緩沖區(qū),存放SQL語句的執(zhí)行結(jié)果,
每個游標區(qū)都有一個名字。
9.A解析:TCP/IP參考模型在網(wǎng)絡(luò)層定義了IP協(xié)議;在傳輸層定義了
TCP和UDP協(xié)議;在應(yīng)用層定義了TELNET協(xié)議FIT協(xié)議、SMTP協(xié)
議、RIP協(xié)議、NFS協(xié)議、HTtP協(xié)議。注意:TCP/IP參考模型在網(wǎng)絡(luò)
層定義了IP協(xié)議,故A)選項不屬于應(yīng)用層協(xié)議。掌握TCP/IP參考模型
以及各層的協(xié)議。
10.A解析:線性鏈表具有的特點是不必事先估計所需存儲空間大小,插
入與刪除時不必移動元素,所需空間與線性表長度成正比,但不能進行
隨機訪問。
H.安全問題【解析】客戶機/服務(wù)器模式在實現(xiàn)中需要解決的主要問題
有:標識一個特定的服務(wù)、響應(yīng)并發(fā)請求和服務(wù)器程序的安全問題。
12.鏈式存儲結(jié)構(gòu)在計算機中用一組任意的存儲單元存儲線性表的數(shù)據(jù)
元素(這組存儲單元可以是連續(xù)的,也可以是不連續(xù)的).\r\n\u3000\u3000
它不要求邏輯上相鄰的元素在物理位置上也相鄰.因此它沒有順序存儲
結(jié)構(gòu)所具有的弱點,但也同時失去了順序表可隨機存取的優(yōu)點"\n
13.部分部分
14.元組或記錄元組或記錄
15.人工智能【解析】概括起來,計算機應(yīng)用技術(shù)領(lǐng)域包括科學(xué)計算、
事務(wù)處理、過程控制、輔助工程、人工智能、網(wǎng)絡(luò)應(yīng)用和多媒體的應(yīng)用
等七大領(lǐng)域。
16.快表快表
17.
ni-1nz+ns
樹與二叉樹的轉(zhuǎn)換;將森林中每棵樹的根結(jié)點作為二叉樹的根結(jié)點,每
個結(jié)點中的從左數(shù)第一個孩子是二叉樹中的左孩子,該孩子的所有兄弟
都依次為該結(jié)點的右孩子,如此例推
18.混合策略混合策略解析設(shè)計概念結(jié)構(gòu)通常有4類方法自頂向下:
即首先定義全局概念結(jié)構(gòu)的框架,然后逐步細化;自底向上:即首先定
義各局部應(yīng)用的概念結(jié)構(gòu),然后將它們集成起來,得到全局概念結(jié)構(gòu);
逐步擴張:即首先定義最重要的核心概念,然后向外擴充,以滾雪球的
方式逐步生成其他概念結(jié)構(gòu),直至總體概念結(jié)構(gòu);混合策略:即將自頂
向下和自底向上相結(jié)合,用自頂向下策略設(shè)計一個全局概念結(jié)構(gòu)的框架,
以它為骨架集成用白底向上策略設(shè)計的各局部概念結(jié)構(gòu)。
19.BCNF
20.SQLServerProfiler數(shù)據(jù)庫引擎優(yōu)化顧問
21.B
【答案】B
【解析】DataArchitect是可以對PowerDesigner中所有模型信息進行
訪問的只讀模塊。
22.B解析:用戶的邏輯文件要存放到存儲介質(zhì)上時,文件系統(tǒng)要根據(jù)存
儲設(shè)備的類型,用戶采用的存取方式?jīng)Q定文件在存儲介質(zhì)上的組織方式。
23.A
24.A
25.C
26.A解析視圖是從一個或幾個基本表中根據(jù)用戶需要而做成的一個虛
表。視圖是虛表,它在存儲時只存儲視圖的定義,而沒有存儲對應(yīng)的數(shù)
據(jù),視圖是只在剛剛打開的一瞬間,通過定義從基表中搜集數(shù)據(jù),并展
現(xiàn)給用戶。
27.A
28.D解析:為保證數(shù)據(jù)庫是可恢復(fù)的,登記日志文件時必須遵循以下兩
條原則:1、登記的次序嚴格按并發(fā)事務(wù)執(zhí)行的時間次序;2、必須先寫
日志文件,后寫數(shù)據(jù)庫。
29.D
30.C解析:關(guān)系的性質(zhì)1、每列中的分量來自同一個域;2、不同列的分
量可以來自相同的域,但是不同列的屬姓名不能相同;3、列的順序可以
交換;4、行的順序可以交換;5、一個關(guān)系中不能有相同的元組;6、每
一個分量必須是不可分的數(shù)據(jù)項。
31.\n【審題關(guān)鍵句】讀入數(shù)值,奇數(shù)個數(shù),偶數(shù)個數(shù),數(shù)組下標為奇數(shù)
的平均值。
\n【解題思路】
\n本題類似第42套試題,通過審題可以發(fā)現(xiàn)僅有一個不同點,即本題
是計算數(shù)組下標為奇數(shù)的元素的平均值,參考答案的第6條語句。
\n【參考答案】
\n
\n
32.【審題關(guān)鍵句】小于后連續(xù)5個數(shù),偶數(shù),從小到大排序。
\n【解題思路】
\n①首先定義兩個循環(huán)整型變量i、j和一個用于數(shù)據(jù)交換的整型變量
abo
\n②然后在for循環(huán)語句中,先指定循環(huán)變量i從0開始,依次遞增到
MAX-5(到MAX.5的原因是因為從倒數(shù)第5個數(shù)開始,其后面的數(shù)都
不滿5個數(shù),與題目要求不符,因此可以省略最后5個數(shù)),接著對每個
數(shù)組元素a用判斷其是否為偶數(shù)且小于其后面連續(xù)的5個數(shù),然后把滿
足此條件的數(shù)組元素a[i]賦給數(shù)組元素b[cnt],同時數(shù)組的下標變量ent
加1。③最后,用雙重for循環(huán)語句對數(shù)組b中的數(shù)組元素兩兩比較大
小,如果前一個數(shù)組元素大于后一個數(shù)組元素,則兩者進行互換,實現(xiàn)
對數(shù)組b進行升序或降序的排列。
\n【參考答案】
\n
\n
33.\n【審題關(guān)鍵句】計算金額,按金額從大到小進行排列,相同的則按
產(chǎn)品代碼從大到小排列,結(jié)果存入結(jié)構(gòu)數(shù)組。
\n【解題思路】
\n本題類似第57套試題,通過審題可以發(fā)現(xiàn)主要是排序條件的設(shè)置要
求有所
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 服裝加工廠職工勞動合同
- Unit 3 The art of painting Extended reading (2) 教學(xué)設(shè)計-2024-2025學(xué)年高中英語譯林版(2020)選擇性必修第一冊
- 浙江工商職業(yè)技術(shù)學(xué)院《國際貿(mào)易理論與政策》2023-2024學(xué)年第二學(xué)期期末試卷
- 重慶文化藝術(shù)職業(yè)學(xué)院《建筑工程質(zhì)量控制》2023-2024學(xué)年第二學(xué)期期末試卷
- 江西新能源科技職業(yè)學(xué)院《視頻特技與非線性編輯》2023-2024學(xué)年第二學(xué)期期末試卷
- 中國石油大學(xué)(華東)《參展實務(wù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧裝備制造職業(yè)技術(shù)學(xué)院《單片機原理課程設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 可克達拉職業(yè)技術(shù)學(xué)院《社會調(diào)查原理與方法》2023-2024學(xué)年第二學(xué)期期末試卷
- 濰坊環(huán)境工程職業(yè)學(xué)院《物聯(lián)網(wǎng)通信技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖南城市學(xué)院《MBA運營管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 食品安全與營養(yǎng)健康課件
- 藥品經(jīng)營質(zhì)量管理規(guī)范(GSP)實用教程教學(xué)課件
- 歸檔文件整理規(guī)則
- 外研社一起英語四年級下冊課文
- 學(xué)校辦公室主任述職報告
- 《列夫·托爾斯泰》-完整版PPT
- 高考古代詩歌鑒賞復(fù)習(xí)教案
- 負數(shù)的認識1202
- 中國鐵塔建設(shè)維護工作培訓(xùn)PPT通用通用課件
- 新視野大學(xué)英語第三版Book 2 Unit 1 Text A
- 醫(yī)療設(shè)備清單
評論
0/150
提交評論