2023年云南省丽江市全国计算机等级考试数据库技术预测试题(含答案).docx
《2023年云南省丽江市全国计算机等级考试数据库技术预测试题(含答案).docx》由会员分享,可在线阅读,更多相关《2023年云南省丽江市全国计算机等级考试数据库技术预测试题(含答案).docx(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2023年云南省丽江市全国计算机等级考试数据库技术预测试题(含答案)学校:班级:姓名:考号:、1.选择题(10题)ABCbac1 .设有关系R, S和T如下。关系T是由关系R和S经过哪种操作得ABCabcbaccbaABCbacaab到的?A.RUSB.R-SC.RPS D. RCXS2 .在一个单链表中,若要删除P结点的后续结点,则执行()oAP1 . next :=Pf . nextf . next ;8 .P : =Pf next ; Pf . next : =Pf . next . next ;C.f?ee(PT . next);D.P : =Pf nextT . next ;把这些四
2、位数按从小到大的顺序存入数组b中,最后调用写函数 writeDat把结果ent以及数组b中符合条件的数输出到Out dat文件中。注意:部分源程序存在test . c文件中。程序中已定义数组:*200. b(200,已定义变,ent请勿改动数据文件in.dat中的任何数据、,-函数mam。、读函数rcadDatO和写函数writcDatO的内容.1 ; include 2 :fdefine MAX 200 I3 j int a(MAXl, b(MAX)r ent 0;4 ; void wrlteDat();5 ! void jsVal()6 I8910void rcddDdt.()121314
3、1516 口int i;FILE *fp;fp - fopenr);for(i 0; i MAX;fscanf(fp, *cT. &a(i1); fclose(fp);void mam()19 : 202122232425262728int i;readDat();jsVal();.print ,满足条件的数NdrT. ent);for(i 0; i ent; i”)printf(Htd , bi);print (,nw) ;1writeDat();30 131 ;FILE efp;32 !int i;33 ;fp fopen(Hout.datr wi;34 ;fprintf(fp, widn
4、Ht ent);35 !for(i 0; i ent;36 fprintf (fp# 7dn,37 ;fclose(fp);29 ! void writeDat()38 : )34.函数ReadDat实现从文件in . dat中读取一篇英文文章存入到字符串数组XX中,请编制函数StrCharJR,其函数的功能是t以该文章中的 行为单位把字符串中的所有字符的二进制ASCII值右移4位,高位补 0,然后把右移后的字符ASCII值再加上原字符的ASCII值,得到新的 值仍存入原字符串对应的位置上,之后把已处理的结果仍按行重新存入 数组XX中。最后main函数调用函数WriteOat把结果XX输出到文
5、件 out . dat 中 0例如:z”对应的ASCII值为7AH,二进制值为01111010,右移4位后为 00000111,加上原来2”的 ASCII 值 01111010 得到 10000001 结果。原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符 号和空格,并也按字符处理。注意:部分源程序存放在test . C文件中。请勿改动主函数main、读函数ReadDat和输出函数WriteDat的内容。H 1 ; tinclude 2 ! ftinclude 3 ; char xx50|80;4 ! int maxline = 0; /文堂的总行数75 ; int ReadDa
6、t(void);6 j void WriteDat(void);j voidStrCharJR(void)8 ; 19 ;10 ; 111 ! voidmain()12 ; 13 ! if(ReadDat() ! (15 ;priraf数据文件in.dat不能打开! 八007):16 jreturn;Ln- i18 ! : StrCharJR 0;f 19 f WriteDat ();II 20 !从文in&u中读取一篇英文文章存入到字符中代用Xi中/21 int ReadDat(void)22 H23 1 FILE *fp;24 int i * 0;-25 * .char .-ep;26 !
7、 if (fpfopen(Hin.datHrHrw) )NULL)27 ; return 1;28 ; whlle(fgets(xx(ir80,fp) !- NULL)29 ; (30 ; p n strchr(xx(i)f31 j if(p),p - 0;32 |.:*+:33 5)34 j maxline i;35 ! fclose(fp);36 : return 0;37 !) /1E结果xx*出到文仰ouLdai中/38 ;void WriteDat(void)39 ;(40 :FILEwfp;41 !int i;42 ;fp fopen(,iout.dat,43 ! for(i 0;
8、 i maxline; 1)44 ;145 ; printf (isXne xx(i);46 fprintf(fpt ”“sn, xxlij);47 ;)48 J fclose(fp);49 ; 135.函数ReadDat实现从文件in . dat中读取一篇英文文章存入到字符 串数组XX中,请编制函数ConvertCharA,其函数的功能是:以行为单 位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母 z,则改写成字母a,大写字母和其他字符保持不变。把已处理的字符串 仍按行重新存入字符串数组XX中。最后main函数凋用函数WriteDat 把结果XX输出到文件Out . dat中。
9、例* 康文t Adb.Bcdzaabck.LLhj结果:Acc.Bdcabhrdl I I ik23456789101112131415161718192021222324252627282930313233343536373839404142434445 46474849原始数据文件存放的格式是r每行的窗度均小于80个字符.含标点符号和空格. 注部分源程序存放在testc文件中请勿改动主函数main。、读函数ReadDaU)和输出函数WriteDtt。的内容.;linclude include string;char xx50J80J;;int maxline , 0; /*文门的总行数/
10、int ReadDat(void);void WriteDat(void);! void ConvertCharA(void)void main()i I- .if(ReadDat();;printf L数据文件in.dat不能打开! n007);!return;i I ConvertCharAO;WriteDat();h!从文件m.(tet中澹取一英文文章存入到字符小Dtttl u中/;int ReadDat(void) ! ( FILE *fp;int i - 0; j char *p;! if (fp-fopen(Hin.datRrwrH)-NULL) return 1;: while(
11、fgets(xx(i/ 60r fp) !- NULL)I *;p strchr(xx(ij rif (p) ep 0; if, 一maxline i;fclose(fp);return 0;I/纪蛤果U 出到文件M&t中void WriteDat(void)FILE #fp;int 1;fp = fopen(wout.datHr *ww);ford - 0; i maxline; (printf(w%sn-r xx(ij);fprintf (fp, *%snwr xx(iH ;fclose(fp);36.已知在文件in .dat中存有100个产品销售记录,每个产品销售记录 由产品代码dm(字
12、符型4位),产品名称me(字符型10位),单价dj(整 型),数量si(整型),金额je(长整型)五部分组成。其中:金额=单价*数 量。函数ReadDat读取这100个销售记录并存入结构数组sell中。请编 制函数SortDat,其功能要求:按产品名称从大到小进行排列,若产品名 称相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell 中。最后mainoi函数调用函数WriteDat把结果输出到文件out .dat中。 提示:若中间变量为PRO temp,则可以直接使用结构赋值语句进行解 题:产品名称比较请用函数strcmp进行解题。例如:selli=temp ; 注意:部分源程序
13、存放在test . c文件中。请勿改动主函数main、读函数ReadDat和输出函数WriteDat的内容。78910111213PRO sell【MAX);1415161718voidvoidvoidReadDat();WriteDat();SortDat ()192021222324252627voidmemsetsell, 0, sizeof(sell);ReadDat();SortDat O /WriteDat();void ReadDat()282930313233343536FILE *fp;char str809 ch(11);int i;fp - fopen(Hln.dat*,
14、r for(i - 0; i 100; Ifgets(str, 80. fp);memepy(selli.dm, str. 4);1 1 tinclude 2 ; #include 3 - #include 4 ! tdefine MAX 100S ; typedef struct 6 ! !char dm5; /产M代码/ char me(11 ; /产品名称/ int djv/华馀/int si:/ft* /long je;/金。/PRO;37383940414243444546474849505152S45556memcpy (sell (1! .tnc, str 4. 10);Enem
15、cpy(ch#3trl49 4); ch4-0; sell(i).dj dtol(cb);memcpy(ch.str*18.5); ch5-0;sell|1sl , atoi(ch);Mill幻” (long)sell(i) ,dj sell(1 .si; I fclose(fpj;void WriteDat(). J,. y ,- r一川小卜, 4*,FILE fp;,.int 1;. s,fp fopen(*out.datf -ww): for(1 0; i 100;; Ifprintf (fp, -ta %s Md I5d,101dn”. sell(i| .dm9 sellij mcr
16、sell(l| .dj, aelllil .al, sell|i).je);I fclO8(fp);37.程序test . C的功能是:利用以下所示的简单迭代方法求方程cos(x) . x=o的一个实根。迭代公式:Xn+1=cos(xn)(n是迭代次数)迭代步骤如下:取XI初值为0 . 0 ;(2)XO=X1,把XI的值赋给x0;(3)Xl=cos(x0),求出一个新的 xl ;(4)若x0 .XI的绝对值小于0 .000001,执行步骤(5),否则执行步骤;所求XI就是方程cos(X)-X=0的一个实根,作为函数值返回。请编写函数countValue实现程序的功能,最后main函数调用函数w
17、riteDAT把结果输出到文件Out ,dat中。注意 部分源程序存放在test C文件中。请勿改动主函数main和输出数据函数writeDAT的内容。1345678finclude 衰示这个程序中要引用vu6.0的数学阵内收main ()#include 赛示这个程序弓I用“5.0的标准入,出函数 void writeDAT () ; writeDRT)m效的说明语句 double countvalue()10 ; prlntfcountValuo O ); /LW上ii示方程的一个根11 ! printf (* %fn*r cos (countvalue () -countvalue ()
18、; 在第H示求得这个宴租的精收12 j writeDAT(); 纪结果恤出*文件06dm中13 : !,函数wntcDATOie站粤班则文件31.如 中/14 ;void writeDAT()15 ! (16 :FILE *wf; 定义文件flHt左17 - wf-fopcn(Hout.datH/HwH); 以只弓的方式打升out.da。弁使s指向这个支件18 ! fprxntf (wfrcountValueO ); 圮求利的实根写入到文件 out .stI19 i (close (wf); 关用文件 out.g。20 :)38.已知数据文件in .dat中存有200个四位数,并已调用读函数r
19、eadDat 把这些数存入数组a中,请考生编制一函数jsVal,其功能是:如果四位 数各位上的数字均是奇数,则统计出满足此条件的个数ent并把这些四 位数按从大到小的顺序存入数组b中。最后main函数调用写函数 writeDat把结果ent以及数组b中符合条件的四位数输出到Out . dat文 件中。注意:部分源程序存在teste文件中.程序中已定义数组:a(200t b(200.已定义安量s ent请勿改动数据文件Hdat中的任何数据主论数mam。、读函数readDatQ和写函数writeDat。的内容.23 45 67finclude define MAX 200 int a(MAX),
20、b(MAX|, ent void writeDat();void jsValO0;8910111213141541617181920212223242526272829void readDat O 从ln.dat文件中博取200个四位室存入依忸a中 ( int 1;FILE efp;fp fopenwr*); for(1 w 0; 1 MAX; ii) f scanf (fp/&a 1);fclosG(fp);void main() ( int i;readDat();13Vai O ; 用嫉&)svl()t实现11要求的功能 printf满足条件的数,6dn. ent); for(i 0;
21、i ent; i )printf(w%d 0 bi): printf(-nM);writeDat();)void writeDat () 把il以及数也b中将化条小的四位依,的到oot.dai文件中303132333435363738FILE fp;int 1;fp - fopen(wout.datH,Hw*J;fprintf (fp/ 7dn/ ent); ford - 0; i ent;fprintf (fp, Fdn”. b(i); fclose(fp);39.已知数据文件in dat中存有200个四位数,并已调用读函数readDatO把这些数存入数组a中,请考生编制一函数jsVal,其
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 云南省 丽江市 全国 计算机等级考试 数据库技术 预测 试题 答案
限制150内