(2021年)福建省厦门市全国计算机等级考试数据库技术模拟考试(含答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(2021年)福建省厦门市全国计算机等级考试数据库技术模拟考试(含答案) 学校:________ 班级:________ 姓名:________ 考号:________
一、1.选择题(10题)
1. 关系数据库规范化中的删除操作异常是指( )。
A.删除了不该删除的数据
B.应该删除的数据没有删除
C.无法删除应该删除的数据
D.无法恢复删除的数据
2. 数据库概念设计的E-R方法中,用属性描述实体的特征,属性在E-R图中一般用下列哪种图形表示?
A.矩形
B.四边形
C.菱形
D.椭圆形
3. 下列哪些属性是新一代数据库开发应具有的特征? Ⅰ.支持开发人员对各种对象的处理Ⅰ.支持基于Internet的开发Ⅰ.支持面向对象的程序设计
A.Ⅰ和Ⅰ
B.Ⅰ和Ⅰ
C.Ⅰ和Ⅰ
D.都是
4. 20世纪90年代,随着网络技术的发展,哪一种结构的数据库系统成为主流?
A.客户机/服务器
B.并行
C.分布式
D.网络
5. 下列关于网络安全服务的叙述中,哪一个是错误的?
A.应提供访问控制服务以防止用户否认已接收的信息
B.应提供认证服务以保证用户身份的真实性
C.应提供数据完整性服务以防止信息在传输过程中被删除
D.应提供保密性服务以防止传输的数据被截获或篡改
6. PowerDesigner中的WarehouseArchitect模块的主要功能是( )。
A.用于物理(逻辑)数据库的设计和应用对象的生成
B.通过模型的共享支持高级团队工作的能力
C.用于数据仓库和数据集市的建模和实现
D.提供对PowerDesigner所有模型信息的只读访问
7. 逻辑文件存放在存储介质上时,采用的组织形式是与什么有关?
A.逻辑文件结构
B.存储介质特性
C.主存储器管理方式
D.分配外设方式
8. 以下关于ER模型向关系模型转换的叙述中,哪一条是不正确的?
A.一个1∶1联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并
B.一个1∶n联系可以转换为一个独立的关系模式,也可以与联系的n 端实体所对应的关系模式合并
C.一个m∶n联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并
D.三个或三个以上的实体间的多元联系转换为一个关系模式
9.实体集书店与图书之间具有()联系。
A.一对一
B.一对多
C.多对多
D.多对一
10. 下列属于数据库系统阶段特点的是
Ⅰ.数据结构化
Ⅰ.数据共享性高
Ⅰ.独立性高
Ⅰ.数据无专门软件管理
Ⅰ.冗余度大,不易扩充
A.Ⅰ,Ⅰ和Ⅰ
B.Ⅰ,Ⅰ和Ⅰ
C.Ⅰ,Ⅰ和Ⅰ
D.全部
二、填空题(10题)
11. 一些进程相互合作共同完成一项任务,进程之间的这种直接的协同工作关系称为_____。
12.在请求页式管理中,当硬件地址变换机构发现所需的页不在内存时,会产生【】中断信号,由中断处理程序做出相应的处理
13. 电子邮件程序向邮件服务器发送邮件时,使用的协议是______。
14. 在嵌入式SQL中,为了区分SQL语句和主语言语句,在每一个SQL 语句的前面加前缀______。
15.客户程序访问DBMS的常用标准一般有两个:一个称为开放数据库互连【】标准;另一个是面向Java程序语言的相关标准,称为【】。
16.数据仓库系统(DWS)由数据仓库(DW)、【】和【】三部分组成。
17.FTP协议规定:向服务器发送___________命令可以进入被动模式。
18. m阶B+树的根结点至多有______个子女。
19. 被认为是真正意义上的安全产品一般其安全级别应达到______。
20.RC5算法中使用了3种运算:___________、加和循环。
三、单选题(10题)
21.链栈与顺序栈相比,有一个比较明显的优点是( )
A.插入操作更加方便
B.通常不会出现栈满的情况
C.不会出现栈空的情况
D.删除操作更加方便
22.在E-R图和数据流图中都使用了方框,下列说法中有错误的是( )
A.在E-R图中表示实体
B.在E-R图中表示属性
C.在数据流图中表示起
点D.在数据流图中表示终点
23.下列不是TCP/IP参考模型中的应用层协议()。
A.A.电子邮件协议SMTP
B.网络文件系统NFS
C.简单网络管理协议SNMP
D.文件传输协议FTP
24.把电路中的所有元件如晶体管、电阻、二极管等都集成在一个芯片上的元件称为( )
A.Transistor
B.Integrated Circuit
puter
D.Vacumm Tube
25.某数据库应用系统中,数据库管理员发现某个查询功能是用多表连接操作实现的,此操作性能较差。
在保证功能不变的前提下,若要提高该查询的执行效率,下列方法中可行的是()
A.将此查询语句放置在视图中,使用视图实现该查询操作
B.修改实现此功能的查询语句,将连接查询改为嵌套查询
C.将此功能涉及到的表进行合并,然后对合并后的表进行查询
D.将此查询语句放置在存储过程中,通过调用存储过程实现该查询操作
26.FoxPro DOS是( )
A.DOS下的数据库
B.DOS支持下的数据库管理系统
C.为DOS做的FoxPro
D.DOS下的文字处理系统
27.在建立表结构时定义关系完整性规则( )
A.使DBS能够自动维护数据完整性约束条件
B.还需要编程实现数据完
整性约束条件C.没有必要定义D.将使系统操作复杂
28.如果两个实体之间的联系是1∶M,则实现1∶M联系的方法是( )
A.将两个实体转换成一个关系
B.将两个实体转换的关系中,分别加入另一个关系的主码
C.将"1"端实体转换的关系的主码,放入"M"端实体转换的关系中
D.将"M"端实体转换的关系的主码,放入"1"端实体转换的关系中
29.下面说法中错误的是( )
A.子类具有继承性
B.子类的键是其超类的键
C.子类继承超类上定义的全部属性,其本身不可包含其他另外的属性
D.同一实体类型的若干子类之间可相交也可不相交
30.在SQL Sever中创建用户数据库,实际就是定义数据库所包含的文件以及文件的属性。
下列不属于数据库文件属性的是__________。
A.初始大小
B.物理文件名
C.文件结构
D.最大大小
四、C语言程序设计题(10题)
31. 已知数据文件in.dat中存有200个四位数,并已调用读函数readDat 把这些数存入数组a中,请考生编制一函数isVal,其功能是:把千位数字和十位数字重新组成一个新的含有两位数字的数ab(新数的十位数字是原四位数的千位数字,新数的个位数字是原四位数的十位数字),以及
把个位数字和百位数字组成另一个新的含有两位数字的数cd(新数的十位数字是原四位数的个位数字,新数的个位数字是原四位数的百位数字),如果新组成的两个位数ab>cd,ab必须是偶数且能被5整除,cd必须是奇数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。
最后main函数调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到0ut.dat文件中。
32. 在文件in.dat中存有若干个(个数<200)四位数字的正整数,函数ReadDat读取这若干个正整数并存入数组XX中。
请编制函数CalValue,其功能要求:1.求出该文件中共有多少个正整数totNum;2.求出这些正整数中的各位数字之和是偶数的数的个数totCnt,以及满足此条件的这些正整数的算术平均值totPjz。
最后main函数调用函数WriteDat把所求的结果输出到0ut.dat文件中。
注意:部分源程序存放在test.c文件中。
请勿改动数据文件in.dat中的任何数据,主函数main、读函数ReadDat 和输出函数WriteDat的内容。
33.程序test.c的功能是:计算出自然数SIX和NINE满足条件SIX+SIX+SIX=NINE+NINE的个数cnt,以及满足此条件的所有SIX与NINE的和SUM。
请编写函数countValue实现程序的要求,最后main 函数调用函数writeDAT把结果cnt和sum,输出到文件0ut.dat中。
其中的S,I,X,N,E各代表一个十进制数字,允许代表的数字相同,但s和N不能为0。
例如:944+944+944=1416+1416注意:部分源程序存放在test.c文件中。
请勿改动主函数main和输出数据函数writeDAT的内容。
34. 已知数据文件in.dat中存有200个四位数,并已调用读函数readDat 把这些数存入数组a中,请考生编制一函数jsVal,其功能是:把个位数
字和千位数字重新组成一个新的含有两位数字的数(新数的十位数字是原四位数的个位数字,新数的个位数字是原四位数的千位数字),以及把百位数字和十位数字组成另~个新的含有两位数字的数(新数的十位数字是原四位数的百位数字,新数的个位数字是原四位数的十位数字),如果两个新组成的数均是偶数并且至少有一个数能被9整除,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。
最后main函数调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到0ut.dat文件中。
35. 已知在文件in.dat中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量s1(整型),金额je(长整型)五部分组成。
其中:金额=单价*数量。
函数ReadDat读取这100个销售记录并存入结构数组sell中。
请编制函数SortDat,其功能要求:按产品代码从小到大进行排列,若产品代码相同,则按金额从小大进行排列,最终排列结果仍存入结构数组sell 中。
最后main函数调用函数WriteDat把结果输出到文件out.dat中。
提示:若中间变量为PRO temp,则可以直接使用结构赋值语句进行解题;产品代码比较请用函数strcmp进行解题。
例如:sell[i]=temp;
注意:部分源程序存放在test.c文件中。
请勿改动主函数main、读函数ReadDat和输出函数WriteDat的内容。
36.函数ReadDat实现从文件in.dat中读取一篇英文文章存入到字符串数组XX中;请编制函数SortCharD,其函数的功能是:以行为单位对字符按ASCII码从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组XX中。
最后main函数调用函数WriteDat把结果XX输出到文件out.dat中。
例:原文:dAe,BfC.
CCbbAA结果:fedCBA.,bbCCAA原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。
注意:部分源程序存放在test.C文件中。
请勿改动主函数main、读数据函数ReadDat和输出数据函数WriteDat 的内容。
37. 已知在文件in.dat中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称me(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。
其中:金额=单价*数量。
函数ReadDat读取这100个销售记录并存入结构数组sell中。
请编制函数SortDat,其功能要求:按产品名称从大到小进行排列,若产品名称相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell 中。
最后mainoi函数调用函数WriteDat把结果输出到文件out.dat中。
提示:若中间变量为PRO temp,则可以直接使用结构赋值语句进行解题:产品名称比较请用函数strcrnp进行解题。
例如:sell[i]=temp;
注意:部分源程序存放在test.c文件中。
请勿改动主函数main、读函数ReadDat和输出函数WriteDat的内容。
38. 已知数据文件in.dat中存有200个四位数,并已调用读函数readDat 把这些数存入数组a中,请考生编制一函数jsVal,其功能是:把一个四位数的千位数位置上的值减去百位数位置上的值再减去十位数位置上的值最后减去个位数位置上的值,如果得出的值大于等于零且原四位数是奇数,则统计出满足此条件的个数cnt,并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat把结果cnt以及数组b 中符合条件的四位数输出到0ut.dat文件中。
注意:部分源程序存在test.C文件中。
39. 已知数据文件in.dat中存有200个四位数,并已调用读函数readDat 把这些数存入数组a中,请考生编制一函数jsVal,其功能是:若一个四位数的千位数位置上的值大于等于百位数位置上的值,百位数位置上的值大于等于十位数位置上的值,以及十位数位置上的值大于等于个位数位置上的值,并且原四位数是奇数,则统计出满足此条件的个数cnt并
把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat把结果cnt以及数组b中符合条件的数输出到0ut.dat文件中。
注意:部分源程序存在test.c文件中。
40. 已知数据文件in.dat中存有200个四位数,并已调用读函数readDat
把这些数存入数组a中,请考生编制一函数jsVal,其功能是:若一个四位数的千位数位置上的值小于等于百位数位置上的值,百位数位置上的值小于等于十位数位置上的值,以及十位数位置上的值小于等于个位数位置上的值,并且原四位数是偶数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到文件0ut.dat 中。
五、设计与应用题(2题)
41.设某全国性的运输企业建立了大型0LTP系统,并在该系统之上建立了数据仓库。
0LTP系统和数据仓库中有如下数据表:运输明细表(运输
单ID,发送站ID,终到站ID,货物ID,货物重量,运输价格,发货日期)汇总表1(发送站ID,终到站ID,货物ID,发货日期,总重,总运价)汇总表2(发送站ID,终到地区ID,货物ID,发货日期,总重,总运价)汇总表3(发送站ID,终到站ID,货物ID,发货月份,总重,总运价)汇总表4(发送地区ID,终到地区ID,货物类别ID,发货日期,总重,总运价)该企业管理的货运站约有100个,货物约有500种共l0类,各汇总表都建有主码,且各表有合理的维护策略,在每次维护后数据能保持一致。
设有视图V,该视图的访问频率很高,其查询结果模式为(发送地区ID,终到站ID,发货月份,总重,总运价),该视图现以汇总表1为计算数据源。
经监控发现,汇总表1的被访问频率过高,导致系统整体性能下降,而其它汇总表被访问频率较低。
在不增加汇总表和索引的情况下,请给出一个改善系统服务性能的优化方案,并简要说明理由。
(10分)
42.某网上商城因为业务发展,原有的系统不能很好的满足需要,因此采用了一套新的经营管理系统,此系统使用SQL Server 2008数据库管理系统。
此系统上线运行前,需将商场原有的数据导入到新系统中。
原有系统使用SQL Server 2000,数据结构与新系统不完全一致。
因此需要把数据从SQL Server 2000导入到SQL Server 2008中,为了保证数据一致性,数据导入过程中要求暂停业务且必须在3小时内完成。
(1)在原有数据导入新系统的过程中,实施人员发现原有数据量很大,导人数据需要四小时,业务无法接受。
经分析某工程师认为,数据导入过程中的
数据库I/O很高,但导人数据的程序本身对系统资源占用率很低。
该工程师建议将数据导入过程中的数据恢复模式从“完整”模式改为“简单”模式以提高数据导人速度;而另一位工程师则认为此方法未必能提高数据导入速度,而且还可能导致数据丢失,不建议使用此方法。
请分析此方法是否能够提高数据导入速度并给出理由,同时分析此操作的数据丢失风险。
(5分)(2)在成功导入历史数据后,此系统顺利上线运行。
在上线运行的第一周,发现数据库服务器的CPU使用率很高,达到近90%,高峰期间达到100%,且系统内存占用率达到90%,但系统I/O很轻。
业务人员反应系统操作速度很慢。
为了提高系统运行速度。
在不修改应用程序的前提下,两位工程师提出了不同的解决办法:Ⅰ.为服务器增加2颗CPU,缓解CPU使用率很高的问题;Ⅰ.为服务器增加一倍内存,缓解内存使用率很高的问题。
考虑成本,现阶段只能按照一种方案实施。
请指出在现有情况下,哪种方案更合理并给出理由。
(5分)
六、单选题[1分](2题)
43.事务是数据库中非常重要的概念。
下列关于事务的说法,错误的是()。
A.当数据库出现事务故障或系统故障时,可以通过数据库日志文件进行恢复
B.事务并发执行可能导致数据错误,采用三级加锁协议可以保证数据的一致性
C.为了检测死锁,数据库管理系统会在执行每个事务时检测事务等待图
中是否出现回路
D.数据库管理系统可以采用先来先服务的方式防止活锁现象的出现
44.下列是关于关系数据模型和关系表的说法:Ⅰ.关系数据模型以集合论为基础表示和处理数据Ⅰ.关系数据模型同时支持非过程化语言和过程化语言直接存取数据Ⅰ.“create table…”语句用于定义关系表的结构及数据完整性约束Ⅰ.在关系表上执行select或delete操作时,DBMS会检查数据完整性约束上述说法中正确的是()。
A.仅Ⅰ和Ⅰ
B.仅Ⅰ和Ⅰ
C.仅Ⅰ和Ⅰ
D.仅Ⅰ和Ⅰ
参考答案
1.A解析:存储异常问题有:更新异常、插入异常和删除异常。
其中删除异常是指当删除一些元组时,表中不打算删除的信息也被删除。
2.D解析:在E-R图中,长方形表示实体,椭圆形表示属性,菱形表示联系。
3.D解析:新一代数据库系统工具应具备以下基本特征:①支持与多种数据库连接,可进行对异种数据库源的透明访问;②支持独立于特定DBMS的应用开发,提供统一的访问DBMS的用户界面和应用程序接口;③支持可视化图形用户界面;④支持面向对象的程序设计;⑤提供完善的数据对象;⑥支持开放性;⑦工具的完备和集成一体化。
4.A解析:20世纪90年代,随着网络技术的发展,客户机/服务器(Chient/
Server,简称为(C/S))结构的数据库系统成为主流。
数据库应用快速开发工具也迅速向客户机/服务器结构转移。
客户机/服务器结构把数据库管理和数据库应用划分为两个部分,并分别位于服务器端和客户机端。
5.A解析:本题是对网络安全服务功能的考查。
一个功能完备的网络系统应该提供以下基本的网络安全服务功能:保密性、认证、数据完整性、防抵赖和访问控制。
其中保密性服务的目标是防止传输的数据被截获与篡改;认证服务是要解决网络中信息传送的源结点用户与目的结点用户的身份的真实性,防止出现假冒,伪装等问题;数据完整性服务是用来保证发送的信息与接受数据的一致性,防止出现信息在传输过程中被插入、删除的问题;防抵赖的目的是用来保证源结点用户和目的结点用户不能对已发送或已接收的信息予以否认;访问控制服务是用于控制与限定网络用户对主机、应用、数据和网络服务的访问权限。
本题选项A的叙述是不正确的,因为防止用户否认已接收的信息属于防抵赖的功能,其余3个选项是正确的,所以本题正确答案为选项A
6.C解析:PowerDesigner AppModeler用于物理(逻辑)数据库的设计,和应用对象的生成。
PowerDesigner MetaWorks通过模型的共享支持高级团队工作的能力。
PowerDesigner WarehouseArchitect用于数据仓库和数据集市的建模和实现。
PowerDesigner Viewer提供了对PowerDesigner所有模型信息的只读访问,包括处理、概念、物理(逻辑)和仓库模型。
7.B解析:用户的逻辑文件要存放到存储介质上时,文件系统要根据存储设备的类型,用户采用的存取方式决定文件在存储介质上的组织方式。
8.C解析:E-R模型向关系模型转换时,一个m∶n联系转换为一个关
系模式。
与该联系相连的各实体的码以及联系本身的属性均转换关系的属性,而关系的码为各实体码的组合。
9.B解析:一个书店可以摆放多种图书销售,一本图书只能在一个书店摆放供销售,因此实体集书店与图书之间具有一对多的联系。
10.B解析:人工管理阶段、文件系统阶段、数据库系统阶段各自的特点。
注意:在人工管理阶段,数据不保存,数据不共享;在文件系统阶段,数据可以长期保存,但数据共享性差,数据独立性差,冗余度大,不易扩充;在数据库系统阶段数据结构化,数据共享性高,独立性高。
因此,
A),C),D)选项错误。
掌握数据管理技术发展的3个阶段有哪些异同点。
11.进程同步或同步进程同步或同步
12.缺页缺页中断就是要访问的页不在主存,需要操作系统将其调入主存后再进行访问
13.简单邮件传输协议或SMTP简单邮件传输协议或SMTP 解析:在电子邮件程序向邮件服务器发送邮件时,使用的是简单邮件传输协议(SMTP);而在电子邮件程序从邮件服务器读取邮件时,可以使用邮局协议(POP3)或交互式邮件存取协议(IMAP),它取决于邮件服务器支持的协议类型。
14.EXEC SQLEXEC SQL 解析:把SQL嵌入主语言使用时必须解决3个问题:
①区分SQL语句与主语言语句
这是对通过在所有的SQL语句前加前缀EXEC SQL来解决的。
②数据库工作单元和程序工作单元之间的通信
嵌入式SQL语句中可以使用主语言的程序变量来输入或输出数据。
把SQL语句中使用的主语言程序变量简称为主变量。
③一个SQL语句原则上可产生或处理一组记录,而主语言一次只能处理一个记录,为此必须协调两种处理方式。
这是用游标来解决的。
15.
ODBC
JDBC
开放数据库互连(ODBC)是MICROSOFT提出的数据库访问接口标准。
开放数据库互连定义了访问数据库的API一个规范,这些API独立于不同厂商的DBMS,也独立于具体的编程语言。
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯Java API 编写数据库应用程序
16.
仓库管理分析工具
数据仓库是存储数据的一种组织形式,它从传统数据库中获得原始数,先按辅助决
策的主题要求形成当前基本数据层,再按综合决策的要求形成综合数据层(又可分为轻度
综合层和高度综合层)。
随着时间的推移,由时间控制机制将当前基本数据层转为历史数
据层。
数据仓库系统(DWS)由数据仓库、仓库管理和分析工具三部分组
成。
17.PASV【解析】当客户机向服务器发出数据传输命令时,通过控制连接向服务器发送一个PASV命令,请求进入被动模式。
18.m
19.B1B1 解析:根据计算机系统对各项指标的技术情况,TCSEC将系统划分为4组7个安全级别,按系统可靠性或可信程度逐渐增高依次为:D、C1、C2、B1、B2、B3、A1。
B1级别的产品才被认为是真正意义上的安全产品,达到此级别的产品其名称中多冠以“安全”或“可信”字样,作为区别于普通产品的安全产品出售。
20.异或【解析】RC5算法中使用了3种运算:异或、加和循环。
21.B
22.B方框代表的是实体,属性是椭圆,联系是菱形
23.C解析:应用层协议主要有以下7种。
①网络终端协议TELNET,用于实现互联网中远程登录功能。
②文件传送协议FTP,用于实现互联网巾交互式文件传输功能。
③电子邮件协议SMTP,用于实现互联网中电子邮件传送功能。
④域名服务DNS,用于实现网络设备名字到IP 地址映射的网络服务。
⑤路由信息协议RIP,用于网络设备之间交换路由信息。
⑥网络文件系统NFS,用于网络中不同主机间的文件共享。
⑦HTTP协议,用于WWW服务。
24.B
25.C
26.B
27.A
28.C
29.C
30.C
31.\n【审题关键句】千位+十位与个位+百位,比较大小,整除,奇数,
从大到小排序。
\n【解题思路】
\n本题类似第26套试题,通过审题可以发现主要是对四位数的筛选条件有所不同,即判断新组合的两位数要求第一个为偶数,第二个为奇数,比较两题的第10条语句,只需将新组合的第二个数的判断条件改为奇数判断,即“newV2%2”。
\n【参考答案】
\n
\n
32.\n【审题关键句】读取正数,统计个数,各位数字之和为偶数的数的个数及平均值。
\n【解题思路】\n\t\t定义整型循环变量i、j,表示各位数字之和的长整型变量he以及存储一个四位数的字符数组num[5]。
\n②循环变量i从0开始,依次递增到4,对字符数组num[5]的每个元素赋初值0。
\n③循环变量i从0开始,依次递增到MAXNUM.1,对每个数组元素xx[i]进行判断,如果xx[i]的值非零,则变量totNum加1,退出循环时,totNm的值就是文件in.dat中存有的四位正整数的个数。
\n④循环变量i从0开始,依次递增到totNum-1,对于每个数组元素xx[i]调用库函数sprintf以4个字符宽度形式输出到字符数组num中,用字符数组num中的每个元素减去0的ASCII码48,就分别得到XX[i]这个四位数每位上的数字,并把这四个数字相加赋给变量j。
再对变量j对2求余数进行判断其值是否等于0,如果等于0,则说明j是偶数,变量。