(2023年)山东省泰安市全国计算机等级考试数据库技术预测试题(含答案).docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《(2023年)山东省泰安市全国计算机等级考试数据库技术预测试题(含答案).docx》由会员分享,可在线阅读,更多相关《(2023年)山东省泰安市全国计算机等级考试数据库技术预测试题(含答案).docx(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、(2023年)山东省泰安市全国计算机等级考试数据库技术预测试题(含答案)学校:班级:姓名:考号:一、1.选择题(10题)1 .下面列出的条目中,哪些是数据库技术的主要特点? .数据的结构化 .数据的冗余度小 .较高的数据独立性 .程序的标准化A.QS和DB.和(:.、和DD.都是2 .下列关于可编程只读存储器的叙述中,正确的是()。A.其存储内容可根据用户需求不同,随时可由用户对它再编程B.其存储内容是由制造厂商在生产过程中按预定要求写入的C.其英文缩写为EPROMD.其存储内容只能由用户写一次33.已知数据文件in .dat中存有200个四位数,并已调用读函数readDat把这些数存入数组a
2、中,请考生编制一函数jsVal,其功能是:从数组a 中依次取出一个四位数,对每一个四位数作如下处理:把个位数字和千 位数字重新组成一个新的含有两位数字的数(新数的十位数字是原四位 数的个位数字,新数的个位数字是原四位数的千位数字),以及把百位数 字和十位数字组成另一个新的含有两位数字的数(新数的十位数字是原 四位数的百位数字,新数的个位数字是原四位数的十位数字),如果两个 新组成数:一个是奇数,另一个为偶数,并且至少有一个数能被17整 除,同时两个新数的十位数字均不为零,则将满足此条件的四位数存入 数组b中,并计算满足上述条件的四位数的个数ent,而后对数组b进 行降序排序。最后main函数调
3、用写函数writeDat把结果ent以及数组b 中符合条件的四位数输出到out . dat文件中。例如:一个四位数为4512,依题意组成的第一个新数为24,第二个新 数为51,其中51能被17整除,这两个新数的十位数字不为零,则4512 这个四位数满足题意所规定条件。注意】部分源程序存在teste文件中程序中已定义数组:a200, b200,已定义变量:ent谓勿改动数据文件Hehl中的任何数据,主凶数nwn(),读曲数rcadDai()和写函数writeDat。的内容1 ! linclude 2 速,define MAX :2003 ;int alMAXh b(MAX|/ ent 0;4 !
4、 void writeDat();5 i void jsVal() ;7 i8 i )9 ! void readDat () 从in.dat文件中需取20个四位li存入软巾中10 ;(11 ;int i;12 ! FILE wfp;13 ; fp - fopen(Hin.datwf *rM);14 ! for(i - 0; i MAX;15 ; fscanf(fpr ,d. &11);16 fclose (fp);叶 二.18 i void main()19 ;(20 ;int i;21 !readDat();22; jsValO ; ,用油败”van女flf日求的功能23 printf (满
5、足条件的数A*drT, ent);24 for(i - 0; i ent;25 : printf (w%d * b(i);26 : prlntf Cn-);27 t writeDat();28 ; 29 ; void writeDat () 把计算结果cm 11及敏的b中符合条件的四位数七出列皿击文件中30 ; I31 J FILE32 ! int 1;33 ;fp fopen(out.datRWwn);34 ! fprintf(fprw%dnRt ent);35 i for(i - 0; i ent; 1+)36 fprintf (fprbil);37 !fcloae(fp);38 ; 34
6、.已知在文件in .dat中存有100个产品销售记录,每个产品销售记录 由产品代码dm(字符型4位),产品名称me(字符型10位),单价dj(整 型),数量si(整型),金额je(长整型)五部分组成。其中:金额=单价*数 量。函数ReadDat读取这100个销售记录并存入结构数组sell中。请编 制函数SortDat,其功能要求:按产品代码从小到大进行排列,若产品代 码相同,则按金额从小大进行排列,最终排列结果仍存入结构数组sell 中o最后main函数调用函数WriteDat把结果输出到文件out . dat中。提示:若中间变量为PRO temp,则可以直接使用结构赋值语句进行解 题;产品代
7、码比较请用函数strcmp进行解题。例如:selli=temp ; 注意:部分源程序存放在test . c文件中。请勿改动主函数main、读函数ReadDat和输出函数WriteDat的内容。1 ;include h2 finclude 3 ; tinclude 4 ; fdeflne MAX 1005 ! typedef struct6017 ; char n(5; 八 产豆代码/8 ! char me(11 ; /产品名胖9 jint dj;/通价10 -int si;/ tt*/11 ;long je;/ ftS/12 ; ) PRO;13 ; PRO sellMAX;14 ; void
8、 ReadDat();IS ; void WriteDat();16 : void SortDat()17 ; (182021void main()slzeof(sei1);23242526ReadDat();Sort Dat ();WriteDat O;it取球100个HI售记*先存入Wl构数巾di中/ void ReadDat()int3233fp - fopen(Hfor(i 0; 135J6fgets(strr 80. tp);memcpy(sell(i .dffi, d. 4)memcpy(sei 1(i|.mcrr 4.memcpy(ch,str*14, 4);ch4-(sei 1
9、 (dtol(ch):wemcpy (ch, str-* 18, 5);ch (5 04445sell1.gl selli.jefclose(fp):atoi(ch);(lon?Hell 146八杷崎出到文中void WriteDat()4日49 耳。5253FILE fp;fp f open (out.dat * ford 0; i 100; 1fprlntf (fpt -Is %s Md ,t5d 1101dn*f se sell 111 ”):Ul.dm. aelldl .mcrsell |54fcloao(fp);555635 .将文件in . dat中的200个整数读至数组XX中。请
10、编制jsVahie函 数,要求:求出数组XX中的数值为奇数的个数cntl和数值为偶数的个 数cnt2以及数组XX下标为奇数的元素值的算术平均值pjo结果cntl, cnt2, pj输出到out . dat中。注意:部分源程序存在test . c 文件中。请勿改动数据文件in . dat中的任何数据、主函数main、读函 数read_dat和输出函数writeDat的内容。45678910111213141516171819202122232425262728include (define N 200 Int cntl cnt2r xxNJ; float pj; 平均值 void writeDa
11、t(); void jsValue )/ ro4d_Ut (Int xx(N) ) 唔敬格文件 Uutat 中的 20。个IMkit至故fil u 中/ void readdat(int xxN)(int i,j;FILE *fp;fp - fopenwin.dzitM# *r*);for(i 0; i 20;(for(j 0; 1 10;fscanf(fp.oRa10*j); 从文件ndai中球取一个整数并入敷耀元代 JOU1707中printf(Hnw);fclose(fp);Ivoid main() , read dat(xx);2930313233343536373839jsValue
12、();printf (XnXncntl-idcnt2%dfpj%6.2fn*/ cntl/ cnt2r pj); writeDat();)W,T 一M /将计算结果6tl. cm2.6幡出到outdai中/void writeDat()IFILE *fw;;,fw - fopen(out.dat* Hww);fprintf (fwrH%dn%dn%6.2fnH9 cntlF cnt2. pj); /cnth cm2, pj月入到outdai中 fclose(fw);36 .已知数据文件in .dat中存有200个四位数,并已调用读函数readDat把这些数存入数组a中,请考生编制一函数jsVa
13、l,其功能是:把个位数 字和千位数字重新组成一个新的含有两位数字的数(新数的十位数字是 原四位数的个位数字,新数的个位数字是原四位数的千位数字),以及把 百位数字和十位数字组成另个新的含有两位数字的数(新数的十位数 字是原四位数的百位数字,新数的个位数字是原四位数的十位数字),如 果两个新组成的数均是偶数并且至少有一个数能被9整除,同时两个新 数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存 入数组b中,并要计算满足上述条件的四位数的个数cnto最后main函 数调用写函数writeDat把结果ent以及数组b中符合条件的四位数输出到Out . dat文件中。注意:部分源程序存在
14、U3LC文件中.程序中巳定义数组* 4200. W200.已定义变: ent请勿改动数据文件m.dat中的任何数据.主函数mamO、读函数rcadDW)和写函数writeDaU)的内容.1 ;include 2 5 tdefine MAX 2003 1 int a|MAXL b【MAX, ent 0;4 ; void jsValO5 !(6 ;* II 8 f void readDatO 从s.dau文件中*取200个四位数存入故蛆&中9 ;(10 ;int 1;11 ; FILE fp;.12 fp - fopentln.daft wr);13 ! ford - 0; i MAX;14 ;
15、fscanf (pr6a(i);15 ; fclose(fp);16 ! 17 ; writeDatO /纪计算她果cm以及室lb中符合条杵的区位数*出到oul&i文件中18 ;(19 ! FILE #fp;-2021 !22 ;23 ;24 125 ;26 !27 ;I28 ;29 !30 31 32 !33 ;34 :35 i36 ;37 :int i;fp fopen (wout .daf,/ Ww fprintf(fp,ent)void main ()readDat();isVal(); i ent;调用函收加Val0实现要求的功能printf (”满足条竹的数w$dn”.for(1
16、0; i printf (7d printf (xn);writeDat();2 ;fdefine MAX 2003 ; int aiMAX, b(MAX)f ent - 0;A ! void writeDat();5 ; void jsVal()6 j -7 i8 j I9 ! void readDat()10 j 111 ; int i;12)FILE*fp:;13 ; fp - fopen(Rin.datnf rn);14 ! for (i - 0; i MAX;)*115 1 fscanf (p/&ai);26 ; fclose(fp);17 5 J I18 j void main()
17、19;扣20 ! int i;21 ; readDat();22 1 jsVaK);23 1 prlntf (满足条件的数cnt);24 ; for(1 0; 1 ent; ii)25 J printf (tId26 printf;27 ; writeDat();28 ! 129 2 void wrlteDat()30 j 31 FILE *fp;32 | int 1;33 ! fp - fopen(*out.datH, *ww);34 fprlntf(fpr %dnR, ent);35 ; for(i - 0; i ent; ii)36 ! fprintf(fprb(l)i37 fclose
18、(fp);38 1 I38.设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到的报数,报数到第m个人,此人出再从他的下一个人重新开始1到m的报数,如此进行下去直到所有的人都出圈为止。现 要求按出圈次序,每10人一组,给出这n个人的顺序表。请考生编写 函数Josegh(void)实现此功能,并调用函数writeDat,把结果P输出到文件 out . dat 中。设 n=100, s=l, m=10o将1到n个人的序号存入一维数组P中;若第i个人报数后出圈,则将pi置于数组的倒数第i个位置上,而原来第i+1个至倒数第i个元素依次向前移动一个位置;重复第步直至圈中只剩下pl为止。注
19、意:部分源程序已经给出。请勿改动主函数main和输出数据函数writeDAT的内容。include define N 100*define S 1*define M 10S 678 910 111213int p100,nr s. m;voidvoidvoidWriteDat(void); Josegh(void)main ()1 316171819 ;void WriteDat(void3 - 5; Josegh (); WriteDat();!,把结果p 出到文件OULdm中/22 !23 ;2425265 /以应哨的方式,以io个敢擀为一假把utafori-0; i-)【口出刊屏幕词文件
20、outdaiprintf(Rl4d ”,p|i);mt i;FILE efp;fp fopen (out .dat*, Rww);27 ; fprintf(fp, ”+4cT, p(i);26 ;29 i30 ;31 !32 iif (i410 0) 知果1便帔10 除.射出一个回东换行将( .printf (Vn*);fprintf(fp#Rn*);33fclose (fp);34 ;35 :39.程序test . C的功能是:把s字符串中的所有字符左移一个位置,串中的第一个字符移到最后。请考生编写函数chg(char*s)实现程序要求,最后调用函数readwriteDAT把结果输出到Out
21、 . dat文件中。侪如卜,字符申中原有内容为:Mn.l23xyZ,则鼻用该油畋后,结果为,itl23xyZM.注意卜部分青程序存在teste文件中请勿改动数据文件in.dat中的任何敢据主法数mihM)和程出由数re&dwntcDAT。的内容.1 finclude 2 llnclude 3 j fdefine N 81 定义宏变UN. XttVf 814 ; void readwriteDAT();5 ! void chq(char &)6 (J8 )9 ; main()10 (11 char Af N ;12 i prlntf(HEnter a string:M); gets(a);13
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 山东省 泰安市 全国 计算机等级考试 数据库技术 预测 试题 答案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内