版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
2022年安徽省滁州市全國計算機(jī)等級考試
數(shù)據(jù)庫技術(shù)真題(含答案)
學(xué)校:班級:姓名:考號:
一、1.選擇題(10題)
i.下列關(guān)于函數(shù)依賴的敘述中,是不正確的。
A.由X->Y,X->Z,有X->YZ
B.由XY->Z,有X->Z,Y->Z
C.由X->Y,WY->Z,有XW->Z
D.由X->Y及Z包含于Y,有X->Z
2.在數(shù)據(jù)庫技術(shù)中,實體-聯(lián)系模型是一種
A.概念數(shù)據(jù)模型B.結(jié)構(gòu)數(shù)據(jù)模型C.物理數(shù)據(jù)模型D.邏輯數(shù)據(jù)模型
3.對于學(xué)生信息表:student(sno,sname,sex,age,dept),能夠得到年
齡在20歲到22歲之間的學(xué)生的姓名和學(xué)號的語句是
A.SELECT*FROMstudentWHEREageBETWEEN20AND22
B.SELECTsname,snoFROMstudentWHEREageBETWEEN20AND
22
C.SELECTsname,snoFROMstudentWHEREage>=20
D.SELECTsname,snoFROMstudentWHEREage<=22
4.文件系統(tǒng)采用多級目錄結(jié)構(gòu)的好處是
A.可以進(jìn)行多道程序設(shè)計B.提高內(nèi)存利用率C.不同用戶可以給不同
文件取相同的名字D.文件可以共享
5.允許使用者對數(shù)據(jù)庫中的抽象數(shù)據(jù)提出請求(包括查詢和修改),支持
數(shù)據(jù)庫的各種操作的軟件系統(tǒng)稱為0
A.命令系統(tǒng)B.數(shù)據(jù)庫系統(tǒng)C.操作系統(tǒng)D.數(shù)據(jù)庫管理系統(tǒng)
6.下列敘述錯誤的是
A.登記日志記錄時,登記的順序嚴(yán)格按照事務(wù)的并發(fā)執(zhí)行中操作發(fā)生的
實際順序
B.先修改相應(yīng)的數(shù)據(jù)庫,然后把日志記錄寫到外存的日志文件中
C.如果先寫日志記錄,沒有修改數(shù)據(jù)庫,那么發(fā)生故障時可以進(jìn)行
UNDO,也可以進(jìn)行REDO
D.系統(tǒng)必須遵循先寫日志的原則
7.分時操作系統(tǒng)追求的目標(biāo)是
A.高吞吐率B.充分利用內(nèi)存C.快速響應(yīng)D.減少系統(tǒng)開銷
8.對長串為n的順序線性表進(jìn)行刪除元素的操作,如果刪除每一個元
素的概率相同,則刪除一個元素移動元素的平均次數(shù)為
A.n/2B.(n-l)/2C.(n+l)/2D.n
9.在對象-關(guān)系數(shù)據(jù)庫系統(tǒng)中,創(chuàng)建新的基本數(shù)據(jù)類型需要說明的信息
包括
I.類型名
II.類型的存儲信息
Ill.類型的地址
IV.類型與ASCII碼之間的轉(zhuǎn)換
A.I、II、和IHB.I、II、和IVC.II、HI和WD.全部
10.SQL語言的GRANT和REVOKE語句主要用來維護(hù)數(shù)據(jù)庫的
()。
A.安全性B.完整性C可靠性D.一致性
二、填空題(10題)
H.若X-Y但Y不完全函數(shù)依賴于X,則稱Y對X【】。
12.在TCP/IP的參考模型中,HTTP協(xié)議定義在___層。
13.RC5算法中使用了3種運(yùn)算:加和循環(huán)。
14.IP數(shù)據(jù)報的源路由選項分為兩類,一類為嚴(yán)格源路由,另一類為
___________源路由。
15.進(jìn)程之間的聯(lián)系稱之為進(jìn)程通信,是進(jìn)程通信的工具。
16.在請求頁式存儲管理中,若采用FIFO頁面淘汰算法,則當(dāng)分配的
頁面數(shù)增加時,【】的次數(shù)可能增加也可能減少。
17.用戶檢索POP3郵件服務(wù)器的過程可以分成3個階段:
事務(wù)處理階段、更新階段。
18.在嵌入式SQL中,為了區(qū)分SQL語句和主語言語句,在每一個SQL
語句的前面加前綴0
19.數(shù)據(jù)庫中,每個事務(wù)都感覺不到系統(tǒng)中其他事務(wù)在并發(fā)地執(zhí)行,這
一特性稱為事務(wù)的0
20.進(jìn)行DES加密時,需要進(jìn)行輪的相同函數(shù)處理。
三、單選題(10題)
21.在SQLServer2008的系統(tǒng)數(shù)據(jù)庫中,為調(diào)度信息和作業(yè)歷史提供存
儲區(qū)域的是
A.MasterB.ModelC.PubsD.Msdb
22.為了考慮安全性,每個部門的領(lǐng)導(dǎo)只能存取本部門員工的檔案,為此
DBA應(yīng)創(chuàng)建相應(yīng)的()o
A.視圖(view)B.索弓|(index)C.游標(biāo)(cursor)D.表(table)
23.以下關(guān)于OSI的描述中,錯誤的是()。
A.OSI詳細(xì)說了各層提供的服務(wù),但各層提供的服務(wù)與這些服務(wù)如何實
現(xiàn)無關(guān)
B.OSI不是一個標(biāo)準(zhǔn),只是一個在制定標(biāo)準(zhǔn)時所使用的概念性的框架
C.OSI提供了一系列可以實現(xiàn)的方法
D.OSI中采用了三級抽象
24.磁盤的讀寫單位是()
A?塊B扇區(qū)C.簇D.字節(jié)
25.順序程序和并發(fā)程序的執(zhí)行相比()
A.基本相同B.無法確定C.并發(fā)程序執(zhí)行總體上執(zhí)行時間快D.順序程
序執(zhí)行總體上執(zhí)行時間快
26.下列關(guān)于SQLServer數(shù)據(jù)庫服務(wù)器登錄賬戶的說法中,錯誤的是
A.登錄賬戶的來源可以是Windows用戶,也可以是非Windows用戶
B.所有的Windows用戶都自動是SQLServer的合法賬戶
C.在Windows身份驗證模式下,不允許非Windows身份的用戶登錄到
SQLServer服務(wù)器
D.sa是SQLServer提供的一個具有系統(tǒng)管理員權(quán)限的默認(rèn)登錄賬戶
27.ENIAC所用的主要元件是()
A.集成電路B.晶體管C.電子管D.以上答案都不對
28.在概念設(shè)計階段,需要確定實體型特征由哪些屬性組合而成,這個
工作是對數(shù)據(jù)進(jìn)行什么抽象?()
A.分類B.聚集C.概括D.數(shù)據(jù)抽象
29.某數(shù)據(jù)庫應(yīng)用系統(tǒng)中,數(shù)據(jù)庫管理員發(fā)現(xiàn)某個查詢功能是用多表連接
操作實現(xiàn)的,此操作性能較差。在保證功能不變的前提下,若要提高該
查詢的執(zhí)行效率,下列方法中可行的是()
A.將此查詢語句放置在視圖中,使用視圖實現(xiàn)該查詢操作
B.修改實現(xiàn)此功能的查詢語句,將連接查詢改為嵌套查詢
C.將此功能涉及到的表進(jìn)行合并,然后對合并后的表進(jìn)行查詢
D.將此查詢語句放置在存儲過程中,通過調(diào)用存儲過程實現(xiàn)該查詢操作
30.在SQLSever中創(chuàng)建用戶數(shù)據(jù)庫,其主要數(shù)據(jù)文件的大小必須大于
A.master數(shù)據(jù)庫的大小B.model數(shù)據(jù)庫的大小C.msdb數(shù)據(jù)庫的大小
D.3MB
四、C語言程序設(shè)計題(10題)
31.已知數(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文件中。
注意:部分源赤用存在Itttc文件中.
鞋序中已定義數(shù)組:4200],b(200],已定義交量,ent
請勿改動數(shù)據(jù)文件in.dax中的任何數(shù)據(jù).主激致諛青畋ZDatO和寫由敷writeD8to的內(nèi)容?
1!Iinclude<?tdio.h>
2IIdefineMAX200
3inta[MAXJ,b(MAXj/ent
4voidwriteDat();
voidjsValO
6
7
8
9voidreadDat(>
10
inti;
FILE-fp;
fp?fopen(win.daf,,nrn);
14ford-0;1<MAX;i++)
fscanf(fpr"Rd”,&a[i]);
fclose(fp);
18voidmain()
19
20inti;
21readDat();
22jsVal();
23printf「渦足條件的JRfd'rr.cnt):
24ford?0;i<ent;
25printf",b\i]);
26printf(w\nw);
27writeDat();
28
29voidwriteDat()
30
31FILE?fp;
32inti;
33fp?fopen(Rout.datw,"w");
34fprintf(fp#7d\n",cnt>;
35for<i?0;i<ent;
36fprintf(fpr7d\rT.bl:])
37fclose(fp);
38
32.函數(shù)ReadDat實現(xiàn)從文件in.dat中讀取一篇英文文章存入到字符
串?dāng)?shù)組XX中,請編制函數(shù)ConvertCharA,其函數(shù)的功能是:以行為單
位把字符串中的所有小寫字母改寫成該字母的下一個字母,如果是字母
z,則改寫成字母a,大寫字母和其他字符保持不變。把已處理的字符串
仍按行重新存入字符串?dāng)?shù)組XX中。最后main函數(shù)凋用函數(shù)WriteDat
把結(jié)果XX輸出到文件Out.dat中。
例:原文】Adb.Bcdza
abck.LLhj
結(jié)果:Acc.Bdcab
原始數(shù)據(jù)文件存放的格式是,每行的寬度均小于80個字符,含標(biāo)點符號和空格.
注意?部分源程序存放在test.c文件中.
請匆改動主函數(shù)main。、讀函數(shù)RedDai。和■出喻數(shù)WriteDatO的內(nèi)容.
1.?include<stdio,h>
2;tincludeOtting.h>
3;charxx[50][80];
4jintmaxline,0;/?文量的總h數(shù)?/
5jintReadDat(void);
6"voidWriteDat(void);
7;voidConvertCharA(void)
8
9
10
11|voidmain()
12!I
13?if(ReadDat())
14;?
15printf("數(shù)據(jù)文件in.dat不能打開!\n\007");
16return;
17i)
18ConvertCharA(>;
19jWrltoDat();
20JJ
從文件中it取一■[英文文章存入費(fèi)I字將率依笆u中〃
21;intReadDat(void)
22!(
23;FILE#fp;
24[inti-0;
25ichar*p;
26Jif((fp-fopen("in.daf,HrR))-NULL)
27return1;
28;while(fgeta(xx(i]#80ffp)!-NULL)
29>(
30p-strchr(xx[i]9W
31if(p)*p-0;
32
33:\
34?maxline-i;
35?fclose(fp);
36?return0;
37iI
!/?1E姑果u?出川文仆out&t中?/
38;voidWriteDat(void)
39!(
40iFILE.fp;
41?int1;
w
42?fp-fopen(*out.datr*w**);
43;ford-0;i<maxline;
44(
ww
45printf(%s\nrxx(i]);
46fprintf(fp,*%s\n*rxx(i]);
471\
48!fclose(fp);
49
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,其功能要求:按金額從小到大進(jìn)行排列,若金額相等,
則按產(chǎn)品代碼從小到大進(jìn)行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中。
最后main函數(shù)調(diào)用函數(shù)WriteDat把結(jié)果輸出到文件out.dat中。
提示:若中間變量為PROtemp,則可以直接使用結(jié)構(gòu)賦值語句進(jìn)行解
題。
例如:sell[i]=temp;
注意:部分源程序存放在test.C文件中。
請勿改動主函數(shù)main、讀函數(shù)ReadDat和輸出函數(shù)WriteDat的內(nèi)容。
;Iinclude<stdio.h>
2!Iinclude<9trinq.h>
3;IIncludeOtdlib.h>
4:tdeflnoMAX100
5jtypudofstruct
6!(
7chardm(5);/?代碼?/
8charme(1111/,產(chǎn)品名”?/
9intdj;?餅?/
10Intsi;/?B1?/
11longje;/?金??/
12;jPRO;
13!PROselllMAX);
14;voidReadDat();
15JvoidWrlteDat();
16;voidSortDat()
17
18
19
20?voidmain。
21pt
22momoot(sellt0/sizeot(sell)):
23ReadDat()j
24SortDatO;
25WriteDatO;
26I
21voidReadQat()
28(
29FILE?fp;
30charatr(80)tch(ll);
31int1;
w
32fp-fopen(*in.d4t"f"r);
33ford-0;1<100;
34(
35fgetslstir80,fp);
36memepy(sell(1).dmrstrr4);
37memcpy(sell|ij.me,str?4.10);
38meracpy(ch,str*14,4):chf4j-0;
39sell(i].dj?atoi(ch);
。
4memcpy(ch/Str*18r5):ch(5]-0;
41sell(l).si-atoi(cb);
42sell(i].je-(long>sellll).dj?sell(i)?sl;
43>
44fclose(fp);
45)
46voidWrlteDatO
47(
48FILE*fp;
49int1;
50fp?fopen("out*w*);
51tor(1?0;i<100;"?)
52(
5?fprlntf(fp?"ists%4d%5dt101d\n*rsellfl).dm/sell(l].mc?sell|i).djrscll(l].91,
sellli).je)t
54;
55!fclose(fp);
56i1
34.在文件in.dat中存有若干個(個數(shù)<200)四位數(shù)字的正整數(shù),函數(shù)
ReadDat讀取這若干個正整數(shù)并存入數(shù)組XX中。請編制函數(shù)CalValue,
其功能要求:1,求出該文件中共有多少個正整數(shù)totNum;2.求出這些
正整數(shù)中的各位數(shù)字之和是偶數(shù)的數(shù)的個數(shù)totCnt,以及滿足此條件的
這些正整數(shù)的算術(shù)平均值totPjz0最后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)容。
linclude<stdlo?h>
?defineMAXNUM200
3intxx[MAXNUM];
4inttotNum-0;〃文仆2n.st中共有多少個正整數(shù)
5inttotCnt-0;〃部條件的正事數(shù)的個數(shù)
6doubletotPjz-0.0;〃平均值
7intReadDat(void);
8voidWriteDat(void);
9voidCalValue(void)
10
11
12
13voidmain0
14(
15inti;
16ford-0;i<MAXNUM;f)
17xx(i)?0;
18if(ReadDatO)
19
20據(jù)文件in.dat不能打開!\007\nw);
21return;
22
23CalValue();
24printf("文件in.dat中共有正整數(shù)個\n**.totNum);
25prictf("符合條件的正核數(shù)的個數(shù)7d個\n”.totCnt);
26printfL平均(8?*.21f\n",totPjz);
27WriteDat();
28?
“讀取這若干個正鱉數(shù)并存入數(shù)fli*x中”
29intReadDat(void)
30(
31FILE*fp;
32inti?0;
HwwM
33if((fp-fopen("in.datrr))NULL)
34return1;
35while(!feof(fp))
36(
37fscanf(fp#
381
39fclose<fp);
40return0;
41}
/?忙計算蠟里存入文件。仇?&匕中?/
42voidWrlteDat(void)
43!{
44FILE*fp;
4Sfp-fopen("out.dat",
46fprlntf(fp/"%d\nid\nt.21f\n*rtotNumrtotCnt/totPjz);
47fclose(fp);
48
35.已知數(shù)據(jù)文件in.dat中存有200個四位數(shù),并已調(diào)用讀函數(shù)readDatO
把這些數(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中,最后
調(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)容。
?include<stdio.h>
fdefineMAX200
3inta(MAX)9b[MAX)tent?0;
4voidwriteDat();
5voidjsVal()
6
7
8
/?readDat()從數(shù)IN文件in.dit中法隊200個四位數(shù)〃入效能?中?/
9voidreadDat()
10(
11int1;
12FILE*fp;
13fp-fopen(wln.datR,"r*);
14ford-0;1<MAX;
15fscanf(fp,-Qd?,
16fclose(fp);
17?
18voidmain()
19
20int1;
21readDat();
22jsValO;〃調(diào)用”vau)滴H,實現(xiàn)8m裳求的功能
23printf("滿足條件的數(shù)7d\rT,ent.);
24for(i?0;i<ent;1)?)
25printf(M%d",b(i]);
26prlntfL\n**);
27writeDat();
28
/?值效writcDatO把結(jié)果cm以及教機(jī)b中粒合條件的四位數(shù)?巾到gt&t文件中?/
29voidwriteDat()
30;(
31?FILE?fp;
32;inti;
33fp-fopen(wout.dat",Ww");
34fprintf(fp,"Wd\n".ent);
35for(1?0;i<ent:
36fprintf(fp,b[i]);
37fclose(fp);
38
36.已知數(shù)據(jù)文件in.dat中存有300個四位數(shù),并已調(diào)用讀函數(shù)readDat
把這些數(shù)存入數(shù)組a中,請編制一函數(shù)jsvalue,其功能是:求出千位數(shù)
上的數(shù)加百位數(shù)上的數(shù)等于十位數(shù)上的數(shù)加個位數(shù)上的數(shù)的個數(shù)ent,
再把所有滿足此條件的四位數(shù)依次存入數(shù)組b中,然后對數(shù)組b的四位
數(shù)按從大到小的順序進(jìn)行排序。最后main函數(shù)調(diào)用寫函數(shù)writeDat把
數(shù)組b中的數(shù)輸出到文件out.dat中。
例如,7153.7*1-5B.劃讀數(shù)滿足條件存入數(shù)組b中.旦個數(shù)cnvyn+l.
8129.8+1!=2-9,則該數(shù)不滿足條件豆咻.
注部分源程序存在teste文件中.
程序中已定義故用:aP00].b[300].巴定義受lbent
請勿改動數(shù)據(jù)文件indal中的仟何數(shù)據(jù).I函數(shù)main().該函數(shù)readDalQ和寫函故wnteDiH)的內(nèi)容.
1;tinclude<stdio.h>
2?inta[300)fbf300]fcnt-0;
3;voidreadDat();
4?voidwriteDat();
5jjsValue(>
6\?
71
8;J
9,main()
10;(
11;int1;
12?readDat();
13jjsValueO;
14;writeDat();
15*printf(?,cnt^^dXn**/ent);
16?for(i?0;i<ent;
17;printf("bt%dHldXn**,i.b(i));
ISi)
19;voidreadDat()
20JI
21jFILEwfp;
22int1;
23fp?fopen("in.dAt*,Rr#);
24for(1-0;i<300;?+?)
25fscanf(fp,Fd.",&a{i});
26fclose(fp);
27
voidwriteDat()
29
30FILE#fp;
31inti;
32fp-fopen("out.datH,*w");
wR
33fprintf(fp#td\n^ent);
34ford-0;i<ent;i++)
35fprintf(fp,"&d\rT.b(i));
36fclose(fp);
37
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
abek.LLhj結(jié)果:Aca.Bbcyzzabj.LLgi原始數(shù)據(jù)文件存放的格式是:
每行的寬度均小于80個字符,含標(biāo)點符號和空格。
注意:部分源程序存放在test.c文件中。
請勿改動主函數(shù)main、讀函數(shù)ReadDatO和輸出函數(shù)WriteDat的內(nèi)容。
1Iinclude<stdio.h>
2finclude<string.h>
3charxx[50)1801;
intmaxiIne?0;/?文審的總行ft?/
intReadDat(void);
voidWrlteDat(void);
八口行為?包把字符小中的所的小耳?理小耳*“字圖的上f字理,如黑金字母Md(寫t字理a.M他7投保特不受?/
7jvoidConvertCharD(void)
81
9?
io:
11?voidmainO
12;I
13!if(ReadDat())
14;(
15!printf廣數(shù)據(jù)文件in.dat不能IT開!\n\007t,);
16\return;
17\
18jConvertCharD(>;
19;WriteDat();
20j)
/?從文介皿。中博以?英文文?存入制字符充教出XX中?/
21!intReodDAt(void)
22!(
23;FILE*fp;
24;int1*0;
25;char*p;
26?i£(《fp-foperH.in,daL?-r"))-NULL)
27]return1;
28?while(fgets(xx[ij9804fp)!?NULL)
29;(
30!p■strcbr(xx(i]9?\n*>;
31iif(p)*p-0;
32j
33;)
34\tnaxllne,1;
35?fclose(£p);
36jreturn0;
37!)
/?£格果RX■出*文flOULdH申?/
38jvoidWriteDat(void)
39:(
40jFILE?£pj
<11int1;
42?fp-fopen(*out.dat*r
43!for(1?0;i<naxllne;
44;(
45!printf("ts\n"rxxf1));
46\
fprintf(fptxx[11);
47j>
48!fcloae(fp);
49;
38.函數(shù)ReadDat實現(xiàn)從文件in.dat中讀取一篇英文文章,存入到字符
串?dāng)?shù)組XX中,?請編制函數(shù)eneryptChar,按給定的替代關(guān)系對數(shù)組XX
中的所有字符進(jìn)行替代,仍存入數(shù)組XX對應(yīng)的位置上,最后調(diào)用函數(shù)
WriteDat把結(jié)果xX輸出到文件out.dat中。
替代關(guān)系:f(p)=p*llmod256,mod為取余運(yùn)算,P是數(shù)組XX中某一
個字符的ASCII值,f(p)是計算后的無符號整型值C主意:中間變量定義
成整型變量),如果計算后f(p)值小于等于32或f(p)對應(yīng)的字符是大寫
字母,則該字符不變,否則用f(p)替代所對應(yīng)的字符。
注意:部分源程序存放在test.c文件中,原始數(shù)據(jù)文件存放的格式是:
每行的寬度均小于80個字符,含標(biāo)點符號和空格,并也按此替代關(guān)系
進(jìn)行處理。
請勿改動主函數(shù)main、讀函數(shù)ReadDat和輸出函數(shù)WriteDat的內(nèi)容。
1?include<stdio.h>
2?include<string.h>
3?include<ctype.h>
4unsignedcharxx[50][80];
5intmaxline-0;/?文章的總行數(shù)?/
6intReadDat(void);
7voidWriteDat(void);
8voidencryptChar()
9I
10unsignedintval;
11
12
13voidmain()
14(
15if(ReadDatO)
16(
17printf("數(shù)據(jù)文件m.dat不佬打開!\n\007");
18return;
19)
20encryptChar();
21WriteDat();
22I
,?從文付mdal中口:取一■莢文文??存人父字符中數(shù)mu中?/
intReadDat(void)
24
25FILE*fp;
26inti-0;
27unsignedchar*p;
28if((fp-fopen(-in.datH,)-NULL)
29return1;
30while(fgets(xx(1),80,fp)-NULL)
31I
32p=strehr(xx(i)#*\n*);
33if(p)*p-0;
34If
35
36maxline-i;
37fclose(fp);
38return0;
39>
/????u■出到文件outdai中?/
40voidWriteDat(void)
41
42FILE*fp;
43inti;
44fp■fopenfout.dat**,W
45for(i?0;i<maxline;1*?)
46(
47printf("laXn",xx{iB;
48fprintf(fprFs\n",xx(i]);
49
50fclose(fp);
51
39.在文件in.dat中已存有200個正整數(shù),且每個數(shù)均在1000至9999
之間。函數(shù)readDat是讀取這200個數(shù)存放到數(shù)組aa中。請編制函數(shù)
jsSort,其函數(shù)的功能是:要求按每個數(shù)的后三位的大小進(jìn)行降序排列,
如果出現(xiàn)后三位相等的數(shù)值,則對這些數(shù)值按原始4位數(shù)據(jù)進(jìn)行升序排
列,將排序后的前10個數(shù)存入數(shù)組bb中。
最后調(diào)用函數(shù)writeDat把結(jié)果bb輸出到文件out.dat中。
例:處理前9012509960127025808K
處理屈50998088702560129012
注意:部分源程序存在teste文件中.
請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、I由數(shù)main。、讀函數(shù)readDai。和寫函散writeDatO的內(nèi)容.
Iinclude<3tdlo.h>
linclude<string.h>
voidreadDat();
4;voidwriteDat0;
5|
intaa(200)#bb(10];
6?voidjsSortO
7I
81
9;
10?voidmainO
U!(
12;readDat();
13\
jsSort《);
14?writeDatO;
15;I
16!voidreadDatO
17i(
18?FILE*Lns
19;int1;
20;in-fopen(**m.datR,wrw);
21\
for(1-0;i<200;11??)
22Jfscanf(in,&aa[iH;
23;fclose(tn);
24\,)
25ivoidwriteDat()
26J
27?FILE*out;
28jinti;
ww
29?outifopen(out.datf;
30?for(1?0;i<10;i*+)
31j(
32;www
printf(i%dr%d\nri.;
33j
fprintf(out,0%d\n**rbb(1H;
34;}
35jfclose(out);
36;
40.編寫一個函數(shù)行ndStr(char*str,char*substr),該函數(shù)統(tǒng)計一個長度為
2的子字符串substr在另一個字符串str中出現(xiàn)的次數(shù),該次數(shù)作為函數(shù)
,,
值返回。例如,假定輸入的字符串為”asdasasdfgasdaszx67asdmklo1
子字符串為“as",函數(shù)返回值是6。
函數(shù)ReadWrite實現(xiàn)從文件in.dat中讀取兩個字符串,并調(diào)用函數(shù)findStr,
最后把結(jié)果輸出到文件out.dat中。
注意:部分源程序存在test.c文件中。請勿改動主函數(shù)main和其他函
數(shù)中的任何內(nèi)容,僅在函數(shù)findStr的花括號中
填入你編寫的若干語句。
Iinclude<3tdio.h>
?include〈string.h>
3voidReadWrlte();
4intfindStr(char?str,char?substr)
5
6
7
8mainO
9
10char9tr(81|,substr(3);
11intn;
12printfL輸入字符?。?);
13gets(str);
14prlntf,入/字符申:");
15gets(substr);
16puts(atr>;
17puts(substr);
18□"findStr(str,substr);
19prlntfLn,Ad\n".n);
20ReadWrite();
21I
八從文件E.d?i中it取兩個字符中.片■用雄依findSF),■后杷魴果■出網(wǎng)文件M&I中?/
22voidReadWrite()
23(
24charstr(81],substr(3],ch;
25intnrlenri?0;
26FILE,rf,ewf;
27rf-fopen(*tn.dat*r"r");
28wf?fopen("out?dat”,;
29whiled<5)
30(
31fgets(str,80,rf);〃從文件mdu卬漆取長搜:為R的字符中存入型字符小
32fgets(substr,10,rf);〃M文件indat中澹取長度為9的子孑符中存入到字符串mbstr
33Ion-strlen(substr)?1;〃尼f字符mgubmtr的KJtK)的值M解
34ch-substr(lenj;〃把子字符那的■后一個字用的值M嬉字符ch
,?如果千字得申的?后個字符是同等按行存或星文件的敗桿,副紀(jì)子?衿申的?后一個多籽的值設(shè)置力o?/
35if(ch*?'\n'IIch~Oxla)
36aubstr[len]?0;
/?愣用淞敢fXndStrCstr,substr)返回f字符串substr在字符小atr中山曜的次At?/
37n-flndStr(strrsubstr);
38fprintf(wfrFd\n",n);〃無計算端暨n寫入到文件。uJdau中
39[??;〃0環(huán)殳■,加1
40I
41fclose(rf);*
42fclose(wf);
五、設(shè)計與應(yīng)用題(2題)
41.設(shè)有某商業(yè)單位需要建立商務(wù)數(shù)據(jù)庫用以處理銷售記賬,它記錄的數(shù)
據(jù)包括:顧客姓名,所在單位及電話號碼;商品名稱,型號,產(chǎn)地及單
價;某顧客購買某商品的數(shù)量及日期。假定無同名顧客,無同型號商品,
由話公用靦客可存不同日期買同一商品。(1)請畫出該單位的商務(wù)ER
圖模型并優(yōu)化。(6分)(2)將ER模型換成關(guān)系模型并規(guī)范化到3NF。
(4分)
42.某教務(wù)管理系統(tǒng)使用SQLServer2008數(shù)據(jù)庫管理系統(tǒng),數(shù)據(jù)庫軟硬
件配置信息如下:I.數(shù)據(jù)庫運(yùn)行在兩路IntelXeonE5-26092.4GHz
CPU(每路CPU4核心),128GB內(nèi)存、2塊300GB15000轉(zhuǎn)SAS硬盤
(RAID1)的服務(wù)器上;II.服務(wù)器操作系統(tǒng)為Windows200332位企
業(yè)版,安裝SP2補(bǔ)丁加.數(shù)據(jù)庫為SQLServer2008Enterprise(32位),
數(shù)據(jù)庫中總數(shù)據(jù)量近130GB。近一個學(xué)期以來,用戶反映系統(tǒng)運(yùn)行緩慢,
經(jīng)程序員定位,確定為數(shù)據(jù)庫服務(wù)器響應(yīng)緩慢,需要進(jìn)行調(diào)優(yōu)。(10分)
六、單選題[1分](2題)
43.在數(shù)據(jù)庫應(yīng)用系統(tǒng)的需求分析階段,設(shè)有如下工作:1.分析與描述
目標(biāo)系統(tǒng)需要完成的功能H.分析與描述目標(biāo)系統(tǒng)對響應(yīng)時間、存儲容
量的要求HI.分析與描述目標(biāo)系統(tǒng)涉及的數(shù)據(jù)范圍、數(shù)據(jù)的屬性特征及
數(shù)據(jù)之間的關(guān)系W.分析與描述每項功能活動需要的輸入數(shù)據(jù)、業(yè)務(wù)規(guī)
則及輸出數(shù)據(jù)分析與描述目標(biāo)系統(tǒng)的總體結(jié)構(gòu)、功能活動及各功能活動
之間的關(guān)系以上屬于系統(tǒng)功能建模內(nèi)容的是()o
A.僅I、IV和VB.僅II、IV和VC.僅I、II和HID.僅HI、IV和V
44.在SQLServer2008中,設(shè)ul用戶在某數(shù)據(jù)庫中是db;_datawriter角
色中的成員,則用戶U1從該角色中可以獲得的數(shù)據(jù)操作權(quán)限是()。
I.查詢n.插入HI.更改w,刪除
A.僅IB.僅I和nC.僅II、HI和IVD.全部
參考答案
LB解析:設(shè)R(A1,A2,An)是一個關(guān)系模式,X,Y,Z是R的子
集。若只要關(guān)系,是關(guān)系模式R的可能取值,貝I中不可能存在兩個元
組在X上的屬性值相等,而在Y上屬性值不等,則稱“X函數(shù)決定Y”,
或“Y函數(shù)依賴于X”,記作X-Y,X稱為決定因素。在關(guān)系模式R中,
要判斷函數(shù)依賴是否成立,惟一的辦法是仔細(xì)地考察屬性的含義。
2.A解析:概念模型是對信息世界建模,所以概念模型應(yīng)該能夠方便、
準(zhǔn)確地表示信息世界中的常用概念。概念模型的表示方法很多,其中最
為常用的是P.P.Chen于1976后提出的實體一聯(lián)系方法。該方法用E-R
圖來描述現(xiàn)實世界的概念模型,稱為實體-聯(lián)系模型(Entity-Relationship
Model)簡稱E-R模型。
3.B解析:A)選項中,不是選擇所有列;C)選項年齡沒有小于等于22
歲;D)選項年齡沒有大于等于20歲。
4.C解析:多級目錄更能確切地表達(dá)系統(tǒng)內(nèi)部文件的組織結(jié)構(gòu),方便文
件系統(tǒng)的管理。采用多級目錄結(jié)構(gòu),不同用戶可以給不同文件取相同名
字,只要它們不是同一個目錄節(jié)點下的節(jié)點。
5.D解析:數(shù)據(jù)庫管理系統(tǒng)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理
軟件。它具有數(shù)據(jù)定義功能(用戶可以使用DDL方便地對數(shù)據(jù)庫中的數(shù)
據(jù)進(jìn)行定義);數(shù)據(jù)操縱功能(用戶可以使用DML操縱數(shù)據(jù),實現(xiàn)對數(shù)
據(jù)庫的基本操作,如查詢,插入等);數(shù)據(jù)庫的運(yùn)行管理(數(shù)據(jù)庫在建立、
運(yùn)用和維護(hù)時由DBMS統(tǒng)一管理、統(tǒng)一控制、以保證數(shù)據(jù)的安全性、完
整性);數(shù)據(jù)庫的建立和維護(hù)功能。
6.B解析:系統(tǒng)必須遵循先寫日志的原則。故B)錯。登記日志記錄時,
登記的順序嚴(yán)格按照事務(wù)的并發(fā)執(zhí)行中操作發(fā)生的實際順序。如果先寫
日志記錄,沒有修改數(shù)據(jù)庫,那么發(fā)生故障時可以進(jìn)行UNDO,也可以
進(jìn)行REDOo
7.C解析:分時操作系統(tǒng)使用戶通過與計算機(jī)相連的終端來使用計算機(jī),
允許多個用戶同時與計算機(jī)進(jìn)行一系列交往。由于用戶直接與計算機(jī)系
統(tǒng)交互,所以要求系統(tǒng)能快速對用戶提出的請求給出應(yīng)答。
8.B解析:對長度為n的順序線性表進(jìn)行刪除元素的操作,刪除第i個
元素移動元素的個數(shù)為n-io如果刪除每一個元素的概率相同,則概率為
1/n,所以插入一個元素移動(n-l)/2。
9.B解析:對象-關(guān)系數(shù)據(jù)庫系統(tǒng)支持可擴(kuò)充的數(shù)據(jù)類型,允許用戶除使
用基本數(shù)據(jù)類型外,還可以根據(jù)數(shù)據(jù)需要創(chuàng)建新的數(shù)據(jù)類型。創(chuàng)建新的
基本數(shù)據(jù)類型需要說明的信息包括指明類型名、類型的存儲信息和把該
類型與ASCII碼之間的轉(zhuǎn)換子程序。因此本題正確答案為B(I,H、和
IV).
10.A
SQL語言中用GRANT、REVOKE語句實現(xiàn)數(shù)據(jù)控制功能,數(shù)據(jù)庫中
權(quán)限的授予可以使用GRANT....ON….TO....語句,要求指明授予哪個用
戶(組)對哪個對象有什么權(quán)限,而REVOKE語句實現(xiàn)數(shù)據(jù)庫權(quán)限的回
收,需要指明從哪個用戶(組)回收對于哪個對象的什么權(quán)限。
11.部分函數(shù)依賴部分函數(shù)依賴解析:若X-Y但Y不完全函數(shù)依賴于
X,則稱Y對X部分函數(shù)依賴。掌握對關(guān)系數(shù)據(jù)庫和關(guān)系運(yùn)算的理解。
12.應(yīng)用應(yīng)用
13.異或【解析】RC5算法中使用了3種運(yùn)算:異或、加和循環(huán)。
14.松散【解析】源路由選項可以分為兩類,一類是嚴(yán)格源路由選項,
一類是松散源路由選項。嚴(yán)格源路由選項規(guī)定IP數(shù)據(jù)報要經(jīng)過路徑上
的每一個路由器,相鄰路由器之間不得有中間路由器,并且所經(jīng)過的路
由器的順序不可更改:松散源路由選項只是給出IP數(shù)據(jù)包必須經(jīng)過的
一些“要點”,并不給出一條完備的路徑,無直接連接的路由器之間的路
由尚需IP軟件的尋址功能補(bǔ)充。
15.通信原語通信原語
16.缺頁中斷缺頁中斷
17.認(rèn)證階段【解析】用戶檢索POP3郵件服務(wù)器的過程可以分成3個
階段:認(rèn)證階段、事務(wù)處理階段、更新階段。
18.EXECSQLEXECSQL解析:把SQL嵌入主語言使用時必須解決3
個問題:
①區(qū)分SQL語句與主語言語句
這是對通過在所有的SQL語句前加前綴EXECSQL來解決的。
②數(shù)據(jù)庫工作單元和程序工作單元之間的通信
嵌入式SQL語句中可以使用主語言的程序變量來輸入或輸出數(shù)據(jù)。把
SQL語句中使用的主語言程序變量簡稱為主變量。
③一個SQL語句原則上可產(chǎn)生或處理一組記錄,而主語言一次只能處
理一個記錄,為此必須協(xié)調(diào)兩種處理方式。這是用游標(biāo)來解決的。
19.隔離性隔離性解析盡管多個事務(wù)可以并發(fā)執(zhí)行。但系統(tǒng)必須保證,
對任一對事務(wù)T1和T2,在T1看來。T2或者在T1開始之前已經(jīng)停止
執(zhí)行,或者在T1完成之后執(zhí)行。這樣,每個事務(wù)都感覺不到系統(tǒng)中有
其他事務(wù)在并發(fā)地執(zhí)行。我們稱之為事務(wù)的隔離性。
20.16【解析】在DES加密中,明文的處理經(jīng)過3個階段。首先,64位
的明文經(jīng)過初試置換(IP)而被重新排列。然后進(jìn)行16輪的相同函數(shù)的作
用,每輪的作用中有置換和代換。最后一輪迭代的輸出有64位,它是
輸入明文和密鑰的函數(shù)。最后,預(yù)輸出再被與置換(IP)互逆的逆初始置
換(IP-1)作用產(chǎn)生64位的密文。
21.D
22.A解析視圖是從一個或幾個基本表中根據(jù)用戶需要而做成的一個虛
表。視圖是虛表,它在存儲時只存儲視圖的定義,而沒有存儲對應(yīng)的數(shù)
據(jù),視圖是只在剛剛打開的一瞬間,通過定義從基表中搜集數(shù)據(jù),并展
現(xiàn)給用戶。
23.C
OSI參考模型并沒有提供一個可以實現(xiàn)的方法。OSI參考模型只是描述
了一些概念,用來協(xié)調(diào)進(jìn)程問通信標(biāo)準(zhǔn)的制定。
24.B
25.C
26.B
27.C
28.D
29.C
30.B
31.\n【審題關(guān)鍵句】個位-千位-百位-十位,結(jié)果大于等于零且原四位數(shù)
是偶數(shù),統(tǒng)計出滿足此條件的個數(shù),并按從小到大的順序存入數(shù)組。
\n【解題思路】
\n本題類似第9套試題,通過審題可以發(fā)現(xiàn)僅有一個不同點,即要求統(tǒng)
計的四位數(shù)的條件是“個位-千位-百位-十位>=0",參考答案的第8條語
句,修改if條件語句的判斷條件即可。
\n【參考答案】
\n
\n
32.\n【審題關(guān)鍵句】以行為單位把字符串中的所有小寫字母改寫成該字
母的下一個字母,大小寫不變,其他字符不變。
\n【解題思路】
\n①定義整型循環(huán)變量i、i。
\n②在第一層for循環(huán)中,循環(huán)變量i從0開始,依次遞增直到其值等于
maxline,實現(xiàn)對文章每行的處理。第二層for循環(huán)中,循環(huán)變量j從。
開始,依次遞增直到其值等于strlen(xx[i]),在循環(huán)體中,利用if條件語
句首先判斷)xx[i][j]的值是否在小寫字符字符,之間,然后,再判斷
在此范圍之內(nèi)的小寫字母,如果是z,則該字符轉(zhuǎn)換為a,如果字符不是
z,則將其改寫成它的下一個字母。
\n【參考答案】
\n
\n
\n
33.\n【審題關(guān)鍵句】計算金額,按金額從小到大進(jìn)行排列,相同的則按
產(chǎn)品代碼從小到大排列,結(jié)果存入結(jié)構(gòu)數(shù)組。
\n【解題思路】
\n本題類似第57套試題,通過審題可以發(fā)現(xiàn)主要是排序條件的設(shè)置要
求有所不同,參考答案的第8行進(jìn)行修改即可。
\n【參考答案】
\n
\n
34.\n【審題關(guān)鍵句】讀取正數(shù),統(tǒng)計個數(shù),各位數(shù)字之和為偶數(shù)的數(shù)的
個數(shù)及平均值。
\n【解題思路】\n\t\t定義整型循環(huán)變量i、j,表示各位數(shù)字之和的長整
型變量he以及存儲一個四位數(shù)的字符數(shù)組num[5]0
\n②循環(huán)變量i從。開始,依次遞增到4,對字符數(shù)組num⑸的每個元
素賦初值。。
\n③循環(huán)變量i從0開始,依次遞增到MAXNUM.1,對每個數(shù)組元素
xx[i]進(jìn)行判斷,如果xx[i]的值非零,則變量totNum加1,退出循環(huán)時,
totNm的值就是文件in.dat中存有的四位正整數(shù)的個數(shù)。
\n④循環(huán)變量i從。開始,依次遞增到totNum-1,對于每個數(shù)組元素xx[i]
調(diào)用庫函數(shù)sprintf以4個字符寬度形式輸出到字符數(shù)組num中,用字
符數(shù)組num中的每個元素減去0的ASCII碼48,就分別得到XX[i]這
個四位數(shù)每位上的數(shù)字,并把這四個數(shù)字相加賦給變量j。再對變量j對
2求余數(shù)進(jìn)行判斷其值是否等于0,如果等于0,則說明j是偶數(shù),變量
totCnt加1,并把xx[i]的值累加到變量heo
\n⑤退出循環(huán)后,把變量he的類型轉(zhuǎn)換成雙精度型再除以totCnt得到
符合條件的數(shù)的算術(shù)平均值totPjz。
\n【參考答案】
\n
\n
35.\n【審題關(guān)鍵句】大于后連續(xù)5個數(shù),奇數(shù),從小到大排序。
\n【解題思路】本題類似第35套試題,通過審題可以發(fā)現(xiàn)主要有兩
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州城市職業(yè)學(xué)院《外國文學(xué)名著選讀(二)》2023-2024學(xué)年第一學(xué)期期末試卷
- 貴陽職業(yè)技術(shù)學(xué)院《自由搏擊》2023-2024學(xué)年第一學(xué)期期末試卷
- 貴陽人文科技學(xué)院《信息獲取與處理技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣州珠江職業(yè)技術(shù)學(xué)院《高分子納米材料》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025山西省建筑安全員知識題庫附答案
- 廣州應(yīng)用科技學(xué)院《物聯(lián)網(wǎng)感知、傳輸與控制系統(tǒng)實踐》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣州新華學(xué)院《工程圖學(xué)1》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年江西省安全員C證考試(專職安全員)題庫附答案
- 2025年重慶建筑安全員A證考試題庫
- 2025江西建筑安全員-A證考試題庫附答案
- 福建省能化集團(tuán)筆試題目
- 手糊補(bǔ)強(qiáng)工A卷考試 (1)附有答案
- 一年級語文教學(xué)工作總結(jié)優(yōu)秀4篇
- YY 0286.1-2019專用輸液器第1部分:一次性使用微孔過濾輸液器
- CRRT-抗凝詳解課件
- 抽象函數(shù)單調(diào)性的證明
- 東南大學(xué)結(jié)構(gòu)設(shè)計原理大作業(yè)完成稿
- 廣東省廣州市天河2022-2023學(xué)年數(shù)學(xué)七年級第一學(xué)期期末調(diào)研模擬試題含解析
- GB∕T 41627-2022 動物源空腸彎曲菌檢測方法
- 供貨保障措施
- (完整版)常用樂高零件清單匯總
評論
0/150
提交評論