2022年安徽省马鞍山市全国计算机等级考试数据库技术真题(含答案)_第1页
2022年安徽省马鞍山市全国计算机等级考试数据库技术真题(含答案)_第2页
2022年安徽省马鞍山市全国计算机等级考试数据库技术真题(含答案)_第3页
2022年安徽省马鞍山市全国计算机等级考试数据库技术真题(含答案)_第4页
2022年安徽省马鞍山市全国计算机等级考试数据库技术真题(含答案)_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2022年安徽省马鞍山市全国计算机等级考

试数据库技术真题(含答案)学校:班级:姓名:考号:一、1.选择题(10题)1.MicrosoftSQLServer2000和下列哪一个产品集成使用,可以支持贸易伙伴之间的交流?A.BizTalkTMServer2000B.CommerceServer2000C.MicrosoftEnglishQueryD.MicrosoftOLEDB2.下面关于函数依赖的叙述中,哪十条是不正确的?A.若X-Y,WY->Z,则XW—ZB.若Y=:X,则X—YC.若XY-Z,贝IJX―Z,Y—ZD.若X—YZ,贝”一Y,X-Z3.数据库管理系统的数据模型有三种。A.网状模块、链状模型和层次模型B.层次模型、环状模型和关系模型C.层次模型、网状模型和关系模型D.层次模型、网状模型和语义模型33.程序test.c的功能是:选出1000至5000范围内(包括1000、5000)符合下面条件的四位自然数。条件是:千位数字与百位数字之和等于十位数字与个位数字之和,且千位数字与百位数字之和等于个位数字与千位数字之差的整10倍。计算并输出这些四位自然数的个数ent以及这些数的和sum。请编写函数countValue实现程序的要求。最后main函数调用函数writeDAT把结果crlt和sum输出到out.dat文件中。注意,部分源程序存放在teste文件中.请勿改动主曲数main。和输出数黑函数wrhcDAT()的内容•!finclude<stdioeh>!intcntrsum;〃定义类型全局受■enu相bs•voidwriteDAT();!voidcountValue()-51{徵6,.7h8;voidmain(),9;i( .yjent=sum=0;〃蛤全局变■cnc.sumiR的值为Q;countvalueO;〃调用南故courasiu。力,实现题目要求的功能;printf(,满足条件的自然数的个数■td\nwFent);;print-"满足条件的自然数值的和,%d\nMrsum);;writeDAT();1151116;voidwriteDAT()<171(»FILE,fpj;fp■fopen("out.daL.wwH);!fprintf(fprw%d\nid\nHtent,sum);;fclose(fp);.5).函数ReadDat实现从文件in.dat中读取一篇英文文章存入到无符号字符串数组XX中;请编制函数ChA,其函数的功能是:以行为单位把字符串中的第一个字符的ASCII值加第二个字符的ASCII值,得到

第一个新的值,存入数组单元xx[i][O]中(其中:i是文章中的某行)。第二个字符的ASCII值加第三个字符的ASCII值,得到第二个新的值,存入数组单元xx[i][l]中。以此类推一直处理到最后第二个字符,最后一个字符的ASCII值加原第一个字符的ASCII值,得到最后一个新的值,存放在原字符串对应的位置上,之后把已处理的字符串逆转后仍按行重新存入无符号字符串数组XX中。最后main函数调用函数WriteDat把结果XX输出到out.dat文件中°原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格,并也按它的ASCII值作以上处理。注意:部分源程序存放在test.c文件中。请勿改动主函数main、读数据函数ReadDat和输出数据函数WriteDat的内容。llnclude<stdio.h>2323:4578910intmaxime=0;/•文拿的总行数/intReadDat(void);voidWriteDat(void);voidChA(void)(Jvoidmain()131415131415161718192022232425262728293031323334353637383940414243444546474849printf(■数据文件in.dat不能打开!\n\007wj;return;},;「.」,ChA();WriteDat();I厂从文件in.da!中谟取一管英文文章存入到无密号字希明收炮xx中•/intReadDat(void)(FILEwfp;inti•0;char*p;if((fp«fopen(win.datHrwrw))-NULL)return1;while(fgets(xx[i],B0^fp)!«NULL)p■strchr(xx(i)9•Xn1);if(p)・p』o;if)maxline■i;fclose(fp);return0;)XX,出到outda:文件中•/voidWriteDat(void)(FILE*fp;inti;fp-fopen(Rout.dat*\Rwn);for(i«0;i<maxline;i++)(printf(w%s\nwfxx(i));fprlntf(fprfs\n".xx[i]);)fclose(fp);.函数readDat是从文件in.dat中读取20行数据存放到字符串数组xx中(每行字符串长度均小于80)。请编制函数jsSort,其函数的功能是:以行为单位对字符串变量的下标为奇数的位置上的字符按其ASCII值从小到大的顺序进行排序,下标为偶数的位置上的字符仍按原来位置存放,排序后的结果仍按行重新存入字符串数组)XX中,最后调用函数3456e9ioii1213141516171819202122232A252627282930313233343536373839404136.WrriteDat把结果xx输出到out.dat文件中。例如,位置源字符串例如,位置源字符串01234567hgfedeba则处理后字符串hafcdebR注意4部分源程序存在teste文件中•请勿改动数据文件in.dat中的任何数据、主函效mum。、读函数readDatQ和写函数writeDaH)的内容•!!include<stdio.h>;*include<string.h>voidreadDat();voidwriteDat();;charxx(20](80];voidjsSort()»voidmain0-(readDat();jsSort();writeDat();I!)•N从文件中谩取20打数虫存放到字栉率效组XX中•/!voidreadDat()I■J■Iy;FILE,irnint1-0;Icharwp;•in•fopen(Rin.datt,/Mrn);whlle(i<20“fgets(xx[i]r80,in)!-NULL)fjwp■strehr(xx[i]9•\ne);j If(p)ep•0;'; :♦+>.Ifclose(in);j)•,•把姑果xx愉出到outU文件中•/;voidwriteDat()!(;FILEeOUt;;int1;out-fopen(••out.dat"e"3;for(1•0;i<20;i•printf(,,%s\nRfxx(i]);fprintf(out, xx(l]);K:-> "二":'""………,•I;fclose(out);已知数据文件in.dat中存有200个四位数,并已调用读函数readDat

把这些数存入数组a中,请考生编制一函数jsVal,其功能是:若一个四位数的千位数位置上的值小于等于百位数位置上的值,百位数位置上的值小于等于十位数位置上的值,以及十位数位置上的值小于等于个位数位置上的值,并且原四位数是偶数,则统计出满足此条件的个数ent并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat把结果ent以及数组b中符合条件的四位数输出到文件Outdat中。23456•789101112131415161718192021222324252627282930313233343536373837.注意,部分潭程序存在工C文件中•程序中已定义数组1a[200].b(200J.己定义支量kent请勿改动数据文件in.dal中的任何数据.主函数main。.设的数rcadDat。和写函数writeDatO的内容•1iIinclude<stdio.h>•defineMAX200〃定义东安・max,H值等于200inta(MAX),b(MAX),ent-0;〃定义整BfWiMMAX).b【MAX】和安■ent,并yent的初值为5voidwriteDat0;voidjsVal()voidreadDat()int1;FILErp;fp•fopen(^in.dat1*/Rrw);for(1■0;1<MAX:fscanf(fp,7d",fclose(fp);)voidmain()inti;readDat();jsVal();〃翼用jsValO 要求的功能printf("满足条件的数,qd\nR.ent);for(i-0;i<ent;printf(w%d"♦b(1]);printfC,\nM);writeDat();voidwriteDat()IFILE・fp;int1;fp•fopen(wout.datw,RwR);fprintf(fp,Fd\n".ent);for(1-0;i<ent;1(♦♦)fprintf(fp^”d\n”.b(l));fclose(fp);函数ReadDat实现从文件in.dat中读取一篇英文文章,存入到字符串数组XX中;请编制函数encryptChar,按给定的替代关系对数组XX中的所有字符进行替代,仍存入数组xx对应的位置上,最后调用函数WriteDat把结果XX输出到文件out.dat中。

替代关系:f(p)=p*nmod256,mod为取余运算,P是数组XX中某一个字符的ASCII值,f(p)是计算后的无符号整型值(注意:中间变量定义成整型变量),如果原字符的ASCII值是偶数或计算后f(p)值小于等于32,则该字符不变,否则用f(p)替代所对应的字符。注意:部分源程序存放在test.c文件中,原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格,并也按此替代关系进行处理。请勿改动主函数main、读函数ReadDat和输出函数WriteDat的内容。tinclude<stdio.h>linclude<string<h■include<ctype.h>unsignedcharxx(S01(80);int

intmaxline,0;卜文索的总行数unsignedcharxx(S01(80);int

intmaxline,0;卜文索的总行数•/void

voidReadDat(void);WriteDat(void);encryptChar()34567891011121314151617181920212223242526272829303132333435363738394041424344454647484950请勿改动主的敷读函数RcadDat()和,出的数请勿改动主的敷读函数RcadDat()和,出的数WriteDatO的内格•include

linclude<stdio.h><string.h>tinclude<ctype.h>unsignedcharxx(50](80);intmaxline-0;卜文章的总行数7intReadDat(void);voidWriteDat(void);voidencryptChar();voidmainO11;if(ReadDat())I(; printf(“数据文件in.dat不能打开!\n\007”);return;encryptChar();!WriteDat();\\;/•从文件中it取一/英文文章.存入到字符吊故Mu中•/!intReadDat(void):I;FILEefp;inti•0;unsignedcharwp;jif((fp-foperK-in.dat^r-r*))-NULL)return1;while(fgets(xx[lj,80ffp)!,NULL)(P-strchr(xx[ihf\n#);if(p)・p-0;Imaxline•i;fclose(fp);return0;I);〃七姑累人■出国文件<xaai中〃-voidWrileDat(void)♦JFILE,fp;mt1;fp■fop❷n("out.dat。wwH);for(i*0;i<maxline;ii)printf(Fs\n".xx(i]);fprintf(fp#7-xx(i]);)'fclose(fp);voidmain()(if(ReadDat())(printf("U[据文件in.dat不能打开!\n\007,1);return;encryptChar();WriteDat();),/•从文ftin.dM中逾配一英文文录.存入火?朴市败用xx中〃intReadDat(void)口 ; :,'FILEe£p;inti,0;unsignedchar*p;if((fp-*fopen(Min.dat*rwrH))-NULL)return1;while(fgets(xx[1],80rfp)!,NULL)(p■strehr(xx[i]9#\n*);if(p),#p«0;;1+♦;maxline,1;fclose(fp);roturn0;“把纳果XX■出总文件outdai中〃voidWriteDat(void)(FILEefp;; -inti;fp-fopen("out・dat”.Rw,r);for(i•0;i<maxline;1**)printf(WM.xx[i]);fprintf(fpr7s\nw,xx[1]);fclose(fp);已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些数存入数组a中,请编制一函数jsValue,其功能是:求出千位数上的数减百位数上的数减十位数上的数减个位数上的数大于零的个数12131415161718192021222324252627282930313233343536373839404142434445464748495038.ent,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序。最后main函数调用写函数writeDat把数组b中的数输出到文件。戊•dat中。例如,9123,以1.2・3>0,剜谡数满足条件存入数组6中.且个数cnE+l・9812.%84・2<0,则诙数不满足条件等落•注意:部分瀛程序存在teste文件中•程序中已定义数组:4300).b(300b己定义变量,cm请勿改动数据文件indm中的任何数据,主函数mainO、读函数rcadDaH)和写函数writeDm()的内再•67;>;:i\13tinclude<stdio.h> __inta(300bb(300bcnt-0;〃定义■中数蛆川3gl.b【3C0】和受ftst.并且unt的初值为OvoidwriteDat();voidreadDat();voidjsValue()main()inti;readDat();jsValue();14;15!16।171819writeDdt();printf(•,cnt-tdXn*19ent);for(i-0;i<ent;i*‘)printf(wb(%dl-td\n-<3)“工—voidreadDat<)20!21•22-232425262720FILE#fp;int1;fp■“pen("Ln.dat"."”);00;1<300;1♦*)nf(fp,Hfclose(fp);voidwriteDat()29•30;31!32533;34;35;36:;37:FILE.fp;int1;fp«fopen(Hout"wR)fprintf(fp,fd\M,ent);for(i-0;i<ent;…)fprintf(£p<Fd\n“,b(ifclose(fp);39,已知数据文件in.dat中存有300个四位数,并已调用读函数readDat.事务的持久性是由数据库系统中的哪个部件负责?oA.完整性控制部件B.安全性控制部件C.恢复管理部件D.并发控制部件.关系R和S,RNS的运算等价于()。A.S-(R-S)B.R-(R-S)C.(R-S)USD.RU(R-S)6.9.数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的()A.可靠性B.一致性C.完整性D.安全性.一个公司有若干名兼职人员,而每个兼职人员有可能在多家公司打工,则公司与兼职人员之间具有A•一对一联系B.一对多联系C.多对多联系D.多对一联系.数据库设计的概念结构设计阶段,表示概念结构的常用方法和描述工具是A.层次分析法和层次结构图B.数据流程分析法和数据流程图C.结构分析法和模块结构图D.实体-联系方法和E-R图.下面关于企业级应用开发平台UNIFACE的叙述中,哪一个是不正确的?()。A.UNIFACE采用模型驱动、构件式的应用构造策略B.UNIFACE的开发语言是JAVAC.UNIFACE支持WEB应用的开发把这些数存入数组a中,请编制一数jsValue,其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数ent,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序。最后main函数调用写函数writeDat把数组b中的数输出到文件Out.dato例如i1239,9・则该数满足条件存入数组1>中*且个数cm-cncL8129.d8・l・2〈0・则谖数不满足条件忽略.注意:部分源程序存在teste文件中•程序中已定义数组,[300卜b(300b已定义变最:ent请勿改动数据文件in.dat中的任何数据,主南数mainO.该的数readDW)和写函数writeDai。的内容,1j*include<stdio.h>2;inta[300],b[300),cnt-0;!voidreadDat();jvoidwriteDat();•voidjsValue()6!1(j};main()।(!inti;;readDat();-13|:jsValuet);!writeDat();I।printf(Hcnt«%d\nR^ent);1840.已知数据文件indat中存有200个四位数,并已调用读函数readDatO把这些数存入数组a中,请考生编制一函数jsVal,其功能是:依次从数组a中取出一个四位数,如果该四位数大于该四位数以后的连续五个数且该数是奇数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数ent并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat把结果ent以及数组b中符合条件的四位数输出到Out.dat文件中。注意:部分源程序存在test.C文件中。程序中已定义数组:a[200],b[200],已定义变量:ent请勿改动数据文件in.dat中的任何数据、主函数main、读函数readDat和写函数writeDat的内容。9101516171819finclude<stdio.h>♦defineMAX200Inta(MAX)rb(MAX),ent«(voidwnteDat();voidjsVai()/*rcadgt”从数据文件in.dat中读取200个四位Ifc4入数姐・中•/voidreadDat()int1;FILEefp;fp-fopenwrw);for(i•0;i<MAX;fscanf(fp,fclose(fp);voidmain()20:int1;21;22i23J24:25;26:I27;28:29;readDat();jsValO;〃调用腐故,实现眩目要求的功能printf("淌足条件的数7d\n",ent);for(i»0;i<ent;i++)printf(w%d”,bji));prlntfwriteDat();..।,•喻效writcDiMrfCta聚cm以及数mb中符合条件的四位散■出现M&t文件中•/voidwriteDat()30;I31• FILE#fp;32; inti;33!34•35;36!37i38\fp3fopen(Mout.daf,HwH);fprintf(fp# ent);for(i«0;i<ent;i+f)fprintf(fp."d\M,b[il);fclose(fp);五、设计与应用题(2题)41.设有商品表(商品号,商品名,单价)和销售表(销售单据节,商品号,销售时间,销售数量,销售单价)。其中,商品号代表一类商品,商品号、单价、销售数量和销售单价均为整型。请编写查询某年某商品的销售总毛利的存储过程,毛利二销售数量X(销售单价一单价)。要求商品号和年份为输入参数,总毛利用输出参数返回。(10分)42.设在采用SQLServer2008数据库的图书馆应用系统中有三个基本表,表结构如下所示,请用SQL语句完成下列两个查询:BORROWER:借书证号姓名系名班级12011106蒋辉文计算机系12-112011107王丽计算机系12-112012113范园园信息系12-2LOANS:借书证号图书馆登记号借书日期12011106T0010012012.01.0212012113TOO10262013.02.O6BOOKS:索书号书名作者图书登记号出版社价格TP311.1数据库系统李明T001001科学19.00TP311.2二级C语言王珊TOO1026人民32.00(1)检索至少借了5本书的同学的借书证号、姓名、系名和借书数量。(5分)(2)检索借书和王丽同学所借图书中的任意一本相同的学生姓名、系名、书名和借书日期。(5分)六、单选题[1分](2题).有关系模式:系(系号,系名,系办公电话),教师(教师号,教师名,职称,聘任日期,工资,所在系号)。现要定义下列约束:I.系号是系关系的主码,教师号是教师关系的主码n.职称列的取值只能为“教授”,“副教授”,“讲师”,“助理”和“其他”111•教授的默认工资为10000元,副教授的默认工资为8000元,讲师的默认工资为5000元IV.每个教师的所在系号不能为空,且其值必须在系关系中存在若在数据库中实现以上约束,需要使用触发器才能实现的是()oA.仅I和IIB.仅HI和WC.仅niD.仅I和IV.下列关于数据库性能优化的说法,错误的是()。A.增加派生性冗余列可以降低查询过程中的计算量B.增加冗余列可以减少查询过程中的UNION操作C.适当降低关系模式的规范化程度,可以减少查询过程中的JOIN操作D.当一个表的数据量超过一定规模时,可以采用分割表的方法提高效率参考答案.A解析:本题是数据库软件使用的常识题。MicrosoftSQLServer2000和BizTalkTMServer2000集成使用,可以支持贸易伙伴之间的交流.本题的答案为A。.C解析:关系模式R<U,F>,其中U是一组属性,F是属性组U上的一组数据依赖。函数依赖公理系统的推理规如下。自反律若,则X-Y为F所逻辑蕴涵。增广律:若X-Y为F所逻辑蕴涵,且,则XZ-YZ为F所逻辑蕴涵。传递律:若X-Y及Y-Z为F所逻辑蕴涵,则X-Z为F所逻辑蕴涵。合并规则:由X-Y,X-Z,有X-YZ。伪传递规则:由X-Y,WY-Z,有XW-Z。分解规则:由X-Y及,有X—Z。根据伪传递规则选项A的叙述正确,根据自反律选项B的叙述正确。根据分解规则选项D叙述正确,因为有X-Z且有所以X-Y,X—Z。只有选项C不符合任意一条规律,因此答案为选项C。.C.C解析:数据库管理系统中,为了保证事务的正确执行,维护数据库的完整性,要求数据库系统维护以下事务特性,即原子性、一致性、隔离性和持久性。这4个特性都要有相关的机制保证。事务的原子性是数据库管理系统中管理部件的责任;事务的一致性是事务编码的应用程序员的责任,♦事务的隔离性是管理系统中一个并发控制部件的责任;事务的持久性是数据库系统中恢复管理部件的责任。因此本题正确答案为选项c0.B解析:设关系R和关系S具有相同的目n,且相应的属性取自同一个域,由关系R与关系S的交属于R又属于S的元组组成,显然RDS的运算等价于R-(R-S)0.D解析:在计算机的安全性控制中,包括用户标识和鉴别、DBMS存取控制、操作系统安全保护及数据密码存储。对于数据库的安全性主要是DBMS的存取控制机制,这样可以确保只授权给有资格的用户访问数据库的权限,同时令未被授权的人员无法接近数据。.C解析:本题主要考查了实体之间多对多的联系。如果对于实体集A中的每一个实体,实体集B中至多有一个实体与之联系,反之亦然,称为一对一联系;如果对于实体集A中的每一个实体,实体集B中有n个实体与之联系;对于实体集B中的每一个实体,实体集A中至多有一个实体与之联系,称实体集A与B的联系为一对多联系;如果对于实体集A中的每一个实体,实体集B中有n个实体与之联系;对于实体集B中的每一个实体,实体集A中有m个实体与之联系,称为多对多联系。所以C)正确。.D解析:设计数据库概念最著名、最实用的方法是P.PSChen于1976年提出的‘实体-联系方法',简称E-R方法。它采用E-R模型将现实世界的信息结构统一用实体、属性以及实体之间的联系来描述。.B解析:UNIFACE是美国Compuware公司推出的对于关键性业务应用开发平台和运行环境,主要应用于构造大型的、复杂的业务应用系统。UNIFACE采用模型驱动,构件式开发的应用构造策略,针对Web应用开发提出了完整和高效的解决方案。UNIFACE的开发语言是Proc语言,Proc语言是一种类英语的脚本式语言,简单、易学,并且功能十分强大。10.B解析:按处理对象的不同,依最高级到最低级的次序来划分,依此为:应用层、语言翻译处理层、数据存取层、数据存储层。其中数据存取层处理的对象是单个的元组,它把上层的集合操作转换为单记录操作。因此本题正确答案为B(单个元组)。.增广律增广律.Reports.先进先出淘汰算法(FIFO)页面淘汰算法包括最佳淘汰算法,先进先出淘汰算法,最近最久未使用算法,最近使用最少淘汰算法.关系完整性约束关系完整性约束.联接产品联接产品.CREATEROLE.UPDATE学生SET姓名二“王华“WHERE学号二"10"UPDATE学生SET姓名=,王华,WHERE学号=仅解析:SQL的数据更新命令如下:UPDATETableNameSETColumn_Namel=eExpressionl[,Column_Name2=eExpression2...]WHERECondition一般使用WHERE子句指定条件,以更新满足条件的一些记录的值。.目的主机【解析】在接收到所有分片的基础上,主机对分片进行重新组装的过程称为IP数据报重组。IP协议规定,只有最终的目的主机才可以对分片进行重组。.10头结点和尾节点都只有一个指针,其他的节点是4个指针,所以共有10个指针20.元组或记录元组或记录21.B22.B解析:操作系统是直接运行在裸机上的最基本的系统软件,其他软件都必须在操作系统的支持下才能运行。操作系统是一种资源管理程序,其主要功能是管理计算机软硬件资源,组织计算机的工作流程,方便用户的使用,并能为其他软件的开发与使用提供必要的支持。23.C24.C25.D26.C27.B28.A29.C30.C解析Oracle的数据仓库解决方案主要包括OracleExpressServer、OracleExpressObjectssOracleExpressAnalyzer0Oracle的Internet解决方案主要包括:OracleWebListenersOracleWebAgentsOracleWebServer031.\n[审题关键句】千位+百位等于十位+个位的数的个数,求满足此条件以及不满足此条件的四位数平均值pjzl和pjz20\n【解题思路】\n本题类似第20套试题,通过审题可以发现仅有一个不同点,即判断符合条件的四位数是“千位+百位等于十位十个位”,参考答案的第8条语句,修改if条件语句的判断条件即可。\n【参考答案】\n.\n[审题关键句】字符替代f(p)=p*llmod256,小于等于32或对应大写字母不变,否则替换。\n【解题思路】\n本题类似第65套试题,通过审题可以发现主要是排序条件的设置要求有所不同,参考答案的第6行,修改if条件语句的设置即可。另外,在源程序中已经定义了一个无符号变量val,因此,在编写答案程序时,不需要再重新定义。\n【参考答案】\n\n.\n【审题关键句】千位+百位等于十位十个位,且千位+百位等于个位.千位的10倍。计算并输出这些四位自然数的个数ent以及这些数的和。\n【解题思路】\n①首先定义一个循环变量i,以及分别用来存放四位数分解之后各位数的变量qw(千位)、bw(百位)、SW(十位)和gw(个位)。\n②通过for循环依次对数组中的每个四位数进行分解,循环初值为1000,终值为5000,每循环一次,循环变量i的值加1。每分解一个四位数,根据题目要求,判断其“千位十百位二十位+个位”的条件是否满足,同时判断“(千位+百位)=(个位-于位)*10"的条件是否满足,两个条件之间用运算符进行连接。当同时满足以上两个判断条件时,计数变量ent的值加1,同时将该四位数累加到求和变量sum中,最终得到满足条件的四位自然数个数ent及它们的和sum。\n本题中ent和sum变量在源程序中已经定义,在该子程序中就不需要再重新定义了。\n【参考答案】\n\n34.\n【审题关键句】以行为单位,新字符串中每个字符的ASCII码值等于该位置上的原字符ASCII码值加其后面一个字符的ASCII码值,逆序排序。\n【解题思路】\n①定义整型循环变量i、j和字符局部变量yuano\n②在第一层for循环中,循环变量i从。开始,依次递增直到其值大于或等于maxline,在循环体中,首先把第i行的第一个字符)xX[i][0]赋给变量yuan,在第二层for循环中,循环变量j从。开始,依次递增直到其值等于该行字符串的长度减1,在循环体中,将字符xx[i][j]的ASCII码值与字符)XX[i][j+l]的ASCII码值相加的和保存到字符)xx[i][j]中。当退出第二层for循环后,把第i行的最后一个字符与第一个字符变量yuan的值相加,最后通过strreV函数对i行字符串逆序排序。\n【参考答案】\n\nD.UNIFACE可应用于构造大型而复杂的业务应用系统.在数据库管理系统的层次结构中,数据存取层处理的对象是 OA.字段B.单个元组C.数据页D.系统缓冲区二、填空题(10题).Armstrong公理系统的三条推理规则是自反律、传递律和。.Oracle数据库系统中快速生成报表的工具是Oracle。.虚拟页式存储管理中,当内存空间已经被占满而又要调入新页时,必须进行面试淘汰。页面淘汰算法包括:最佳淘汰算法(OPT)、[]、最近最少使用淘汰算法(LRU)和最不经常使用淘汰算法(LFU)o.关系数据模型包括关系数据结构、关系操作集合和3个重要部分。.一般来说,商品化的数据库管理系统,如Oracle,其产品主要包括数据库服务器软件软件和开发工具三类。.创建用户自定义角色的语句是:().\n【审题关键句】以行为单位对字符串变量的下标为奇数的字符按从小到大排序,结果仍按行重新存入字符串数组中。\n【解题思路】\n①因为要进行字符之间的互换,所以定义局部字符变量ch。定义循环变量i、i、ko\n②在第一层for循环中,循环变量i从0开始,依次递增直到其值等于或大于20,在循环体中实现对每行字符串的处理。在循环体中执行第二层for循环,循环变量j从1开始,依次递增2直到其值等于(int)strlen(xx[i]),在第三层for循环中,循环变量k从j+2开始,依次递增2,直到其值等于(int)strlen(xx[i]),如果字符)XX[i][j]的ASCH码值大于)XX[i][k]的ASCII码值,则两者进行互换,实现字符串)XX[i]中下标为奇数的位置上的字符按其ASCII值从小到大的顺序进行排序,下标为偶数的位置上的字符仍按原来位置存放的功能。\n【参考答案】\n\n.\n【审题关键句】四位数的千位〈二百位〈二十位〈二个位,且四位数是偶数,统计出满足此条件的个数,按从小大的顺序存入数组。\n【解题思路】\n①首先,本题要定义多个变量,包括两个循环变量循环isi,一个用于数据交换的整型变量ab,以及分别用来存放四位数分解之后各位数的变量qw(千位)、bw(百位)、SW(十位)和gw(个位)。\n②通过for循环依次对数组中的每个四位数进行分解,每分解一个四位数,根据题目要求,判断其“千位。百位<二十位。个位”的条件是否满足,并通过a[i]%2==0表达式判断该四位数是否为偶数,各判断表达式之间用运算符进行连接,当满足条件时,则将a嘲的值赋给数组变量b[cnt],同时数组下标变量ent的值加1。循环结束后,所有满足条件的四位数都将保存到数组blentl中。\n③将所有的四位数判断完毕后,最后通过两个for循环,对b[cnt]数组中的元素按从小到大的顺序排序。\n【参考答案】\n\n.\n[审题关键句】字符替代f(p)=p*llmod256,小于等于32或原字符的ASCII码是偶数不变,否则替换。\n【解题思路】\n本题类似第70套试题,通过审题可以发现主要是排序条件的设置要求有所不同,参考答案的第6行,修改if条件语句的设置即可。\n【参考答案】\n\n.W【审题关键句】千数-百位-十位-个位数大于零的个数,把所有满足此条件的数依次存入数组,按从小到大的顺序排序。\n【解题思路】\n本题类似第9套试题,通过审题可以发现仅有一个不同点,即要求统计的四位数的条件是“千数-百位-十位-个位数大于零”,参考答案的第8条语句修改if语句的判断条件。另外,对于数据交换的整型变量trap可以自定义其变量名。\n【参考答案】\n\n\n.\n【审题关键句】个位-千位-百位-十位数大于零的个数,把所有满足此条件的数依次存入数组,按从大到小的顺序排序。\n【解题思路】\n本题类似第9套试题,通过审题可以发现有两个不同点:①要求统计的四位数的条件是“个位一千位-百位一十位数大于零的个数”,参考答案的第8条语句修改if语句的判断条件即可。②将统计结果按从大到小的顺序排序,参考答案的第13条语句,修改两数组元素的大小比较符即可。另外,对于数据交换的整型变量tmp可以自定义其变量名。\n【参考答案】\n\n.\n【审题关键句】大于后连续5个数,奇数,从小到大排序。\n【解题思路】本题类似第35套试题,通过审题可以发现主要有两个不同点:①判断数值为奇数,可通过a[i]%2进行判断,参考答案的第4条语句;②要求进行比较的元素大于后连续5个数,因此在设置判断条件时,作为比较的两个数之间应该是大于关系,参考答案的第4条语句。\n【参考答案】\n\n.存储过程是由PL/SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,使用时只要调用即可。使用存储过程具有以下优点:其已经编译和优化过了,所以运行效率高,提供了在服务器端快速执行SQL语句的有效途径;存储过程降低了客户端和服务器之间的通信量;方便实施企业规则,当企业规则发生变化时只要修改存储过程,而无需修改其他应用程序。创建存储过程:createprocedure过程名@[参数名][类型],@[参数名][类型]/*过程首部*/AsDeclare/*as下面对应的<PL/SQL>块为过程体*/beginend如上所示,存储过程包括过程首部和过程体。过程名是数据库服务器合法的对象标识;参数列表:用名字来标识调用时给出的参数值,必须指定值的数据类型。参数可以是输入参数或输出参数,默认为输人参数。【参考答案】CREATEPROCEDUREPRODUCT@商品号int,@年份int,@毛利血0叫)戊人5口£。^1^@某商品销售量int,@某商品进价int,@某商品销售单价int/*中间变量定义:*/BEGINSelect@某商品进价=单价from商品表where(§^品号二商品号$©怕戊@某商品销售单价=销售单价,@某商品销售量=count(*)from销售表where@商品号二商品号and销售时间=@年份IF@某商品进价isNULLTHEN/木判断该商品是否存在*/ROLLBACK;RETURN;END评评@某商品销售单价isNULLTHEN/*判断该两晶是否可卖*/ROLLBACK;RETURN;ENDIFSET@毛利二(@某商品销售单价一@某商品进价)*@某商品销售量GO.【解题思路】⑴采用两表联合查询。以两表“借书证号”为相等条件,在结果集中用GROUPBY按照“借书证号”来分类,并且用HAVING关键字统计出符合条件的记录数。(2)采用IN关键字进行两表联合查询,在BORROWER和LOANS联合的结果集中查找满足第三个表指定的条件。【参考答案】(1)SELECTLOANS.借书证号,姓名,系名,COUNT(*)As借书数量FROMBORROWER,LOANSWHEREBORROWER.借书证号二LOANS.借书证号GROUPBYLOANS.借书证号HAVINGCOUNT(*)>=5;(2)SELECT姓名,系名,书名,借书日期FROMBORROWER,LOANS,BOOKSWHEREBORROWER.借书证号二LOANS.借书证号ANDLOANS.图书登记号二BOOKS.图书登记号AND索书号IN(SELECT索书号FROMBORROWER,LOANS,BOOKSWHEREBORROW.借书证号=LOANS.借书证号ANDLOANS.图书馆登记号=BOOKS.图书登记号AND姓名="王丽”)43.C触发器使用场合为完成比CHECK约束更复杂的数据约束,为保证数据库性能而维护的非规范化数据,实现复杂的业务规则。CHECK只能实现同一个表的列之问的取值约束。III是对同一个列中元素取值之间的约束,IV选项是在不同表中列之间的取值约束关系都不能用CHECK实现,但可以用外键约束加非空约束实现。所以答案为C。.B增加冗余列指的是在多个表中添加相同的列,这样虽然增加了数据库服务器存储的负担,但可以减少查询过程中的JOIN(连接)操作,而不是UNION(并)操作。所以选B。.设有如下关系:学生(学号,姓名,性别,年龄,班号)其关键字是学号,将学号为10的学生姓名改为“王华”的SQL语句是[]。.在口数据报分片后,通常用负责数据报的重组。.在一个双链表中,包括头结点在内共有6个节点,则共有[]个指针。.在关系数据模型中,二维表的列称为属性,二维表的行称为o三、单选题(10题)21•一个数据表10000行数据,每行3500字节,计算表需要空间()A.20MBB.40MBC.60MBD.80MB22.关于计算机的操作系统,下面叙述不正确的是A.操作系统是从管理程序(管理软件和硬件的程序)发展而来的B.操作系统既是系统软件又是应用软件C.操作系统是计算机用户与计算机的接口D.用户一般是通过操作系统使用计算机.下列关于数据库重构的说法中,错误的是 oA.数据库的重构就是对数据库的逻辑结构作必要的小范围改变B.当存储空间的分配过于零散,导致存取效率下降,所以必须重构数据库C.数据库重构包括重新设计数据库及其应用程序D.如果能够重构数据库,尽量不要重新设计数据库及相应的应用程序.有两个实体集,并且它们之间存在着一个M:N联系,根据概念ER模型转换成关系数据库的规则,这个ER结构转换成表的个数为()A.lB,2C.3D.4.关于水平分割说法错误的是:()A.根据行的使用特点进行分割分割之后所有表的结构都相同。C.而存储的数据不同。使用并(Union)操作。D.使用连接(Join)操作.下列角色中,具有数据库中全部用户表数据的插入、删除、修改权限且只具有这些权限的角色是 OA.db_ownerB.db_datareaderC.db_datawriterD.public.软件生存期的()阶段的最终结果是提供一个可作为设计基础的系统规格说明书。A.规划B.需求分析C.设计D.程序编制.在关系数据库系统中,一个关系相当于()A.一张二维表B.一条记录C一个关系数据库D.一个关系代数运算.Aarr和Barr两个数组说明如下: VARAarr:Array[O...7]ofchar;Barr:Array[-5...2,3...8]ofchar; 这两个数组分别能存放的字符的最大个数是()A.7和35B.1和5C.8和48D.1和6.Oracle的Internet解决方案主要包括哪几部分工具?IOracleExpressServerII.OracleExpressObjectsIII.OracleExpressAnalyzerIV.OracleWebListenerV.OracleWebAgentVI.OracleWebserverA.I,V和VIB.I,II和niC.IV,V和VID.全部四、C语言程序设计题(10题)31.已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些数存入数组a中,请编制一函数jsValue,其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数ent,再求出所有满足此条件的四位数平均值pjzl,以及所有不满足此条件的四位数平均值pjz2o最后main函数调用写函数write

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论