新書推薦:
《
明式家具三十年经眼录
》
售價:NT$
2387.0
《
敦煌写本文献学(增订本)
》
售價:NT$
1010.0
《
耕读史
》
售價:NT$
500.0
《
地理计算与R语言
》
售價:NT$
551.0
《
沈括的知识世界:一种闻见主义的实践(中华学术译丛)
》
售價:NT$
398.0
《
大思维:哥伦比亚商学院六步创新思维模型
》
售價:NT$
332.0
《
宏观经济学(第三版)【2024诺贝尔经济学奖获奖者作品】
》
售價:NT$
709.0
《
UE5虚幻引擎必修课(视频教学版)
》
售價:NT$
505.0
|
編輯推薦: |
◆全新大纲,真考模拟软件适用Windows 7 操作系统和Access 2010。
◆10套无纸化选择题 + 59套无纸化操作题 + 无纸化超级模拟软件 + 选择题高频考点随身学
◆图书主要内容为最新全套无纸化真考题库,命中率100%;由等考命题专家及培训名师编写权威解析
◆ 等考学习软件(光盘安装)
无纸化真考模拟系统:与真考环境完全一致,智能评分,并提供详细文字解析
无纸化真考题库:包含最新版全套无纸化真考题库中的全部选择题与上机操作题,与真考题库同步更新,可在真考环境中做题评分
视频串讲:名师讲解上机操作题解析、介绍机考误区。
◆ 选择题题高频考点随身学(64开手册)
专家剖析真考题库,总结操作题高频考点;便于考成速查、速记,方便携带,冲刺必备
◆ 手机版复习资料包(扫描封面二维码获取)
手机版真考题库软件:真考试题,可做题评分,随时随地练习真考试题
手机版电子书:提供手机版等考电子书,随时随地学习等考考点
◆ 核心提示:教育部考试中心对计算机等级考试体系做出重大调整,考试变化非常大,二级Access考试环境有重大变化,操作系统由Windows XP升级为
|
內容簡介: |
根据教育部考试中心《关于全国计算机等级考试体系调整的通知》(教试中心函[2013]29号)文件精神,将对NCRE体系进行重大调整,改革考试科目、考核内容和考试形式。本次调整涉及NCRE一级到四级所有科目,从2013年下半年考试开始,将实施2013年版新考试大纲,并按新体系开考各个考试级别。各级别均采用无纸化考试形式考试操作系统由原Windows xp改为Windows 7环境,二级Access科目软件环境由Access 2003升级为 Access 2010。
本书依据教育部最新颁布的考试大纲编写,在最新无纸化真考题库的基础上编写而成。本书在编写过程中,编者充分考虑等级考试考生的实际特点,并根据考生的学习规律进行科学、合理的安排。
本书中的试题为从无纸化真考题库中组合而成的成套真题,40道选择题与1套操作题组成一套与正式考试一致的完整的无纸化试题,每套都有无纸化真考题库试卷和参考答案及详细解析。本书配套光盘在设计的过程中充分体现了人性化的特点。
本书配套真考模拟软件,考试环境、考试过程、评分标准与真考一模一样。通过真考模拟软件的练习,考生可以提前熟悉无纸化考试环境及考试流程。
通过本书配和真考模拟软件使用,能体验与真实无纸化考试一样真题与考试环境,能检测考生的知识水平,是考生考前的 “模拟考场”。
|
關於作者: |
全国计算机等级考试命题研究中心、未来教育教学与研究中心专业研究等考18年,由权威命题分析专家和资深等考辅导专家组成,每年为数百万等考考生提供优质计算机等考图书,为考生顺利通过等考提供有力保障。
|
目錄:
|
全国计算机等级考试无纸化真考题库试卷——二级C
最新大纲专家解读 (共4页
无纸化真考题库试卷(1 共8页
无纸化真考题库试卷2 共8页
无纸化真考题库试卷3 共8页
无纸化真考题库试卷4 共8页
无纸化真考题库试卷5 共8页
无纸化真考题库试卷6 共8页
无纸化真考题库试卷7 共8页
无纸化真考题库试卷8 共8页
无纸化真考题库试卷9 共8页
无纸化真考题库试卷(10 共8页
无纸化真考题库试卷(11 ~105 见光盘
参考答案及解析
参考答案及解析 (共24页
超值赠送
选择题高频考点随身学 (共60页,另分册
速学版二级公共基础知识教程 (见光盘
无纸化考试超级模拟软件 (见光盘
|
內容試閱:
|
参考答案及解析 无纸化真考题库试卷1
一、选择题
1 c 【解析】在数据流图中,用标有名字的箭头表示 数据流。在程序流程图中,用标有名字的箭头表示控制流。所 以选择C。
2 A 【解析】结构化程序设计的思想包括:自顶向下、 逐步求精、模块化、限制使用goto语句,所以选择A。
3 B【解析】软件设计中模块划分应遵循的准则是高 内聚低偶合、模块大小规模适当、模块的依赖关系适当等。模 块的划分应遵循一定的要求,以保证模块划分合理,并进一步 保证以此为依据开发出的软件系统可靠性强,易于理解和维 护。模块之间的耦合应尽可能的低,模块的内聚度应尽可能 的高。
4 B 【解析】A错误,可行性分析阶段产生可行性分 析报告。C错误,概要设计说明书是总体设计阶段产生的文 档。D错误,集成测试计划是在概要设计阶段编写的文档。B 正确,需求规格说明书是后续工作如设计、编码等需要的重要 参考文档。
5 A 【解析】算法原则上能够精确地运行,而且人们 用笔和纸做有限次运算后即可完成。有穷性是指算法程序的 运行时间是有限的。
⑻D 【解析】除了堆排序算法的比较次数是OOlogp, 其他的都是^U-12。
7 B 【解析】桟是按“先进后出”的原则组织数据的, 数据的插入和删除都在桟顶进行操作。
C 【解析】E-R图转换成关系模型数据则是把图 形分析出来的联系反映到数据库中,即设计出表,所以属于逻 辑设计阶段。
9 D 【解析】自然连接是一种特殊的等值连接,它要 求两个关系中进行比较的分量必须是相同的属性组,并且在结 果中把重复的属性列去掉,所以B错误。笛卡尔积是用R集 合中元素为第一元素,S集合中元素为第二元素构成的有序 对,所以C错误。根据关系T可以很明显地看出是从关系R 与关系S中取得相同的关系组所以取得是交运算,选择D。
10 C【解析】学号是学生表S的主键,课号是课程表C 的主键,所以选课表SC的关键字就应该是与前两个表能够直 接联系且能唯一定义的学号和课号,所以选择C。
11 A【解析】C语言中的非执行语句不会被编译,不 会生成二进制的机器指令,所以A错误。由C语言构成的指 令序列称C源程序,C源程序经过C语言编译程序编译之后生 成一个后缀为 OBJ的二进制文件称为目标文件);最后要由 “连接程序”把此 OBJ文件与C语言提供的各种库函数连接 起来生成一个后缀为 EXE的可执行文件。
12 A【解析】C语言中八进制整型常量的开头是数字 0,十六进制整型常量的数字开头是0x。C语言中的实型常量 有两种表示形式:小数形式,小数形式表示的实型常量必须要 有小数点;指数形式,以“e”或“E”后跟一个整数来表示以10 为底数的幂数,且规定字母e或E之前必须要有数字,且e或 E后面的指数必须为整数。B选项中028错误,八进制中没有 数字8 C选项中4e1 5中e后面的指数不是整数。D选项中
3 e5小数点后面缺少数字。
13 A【解析】C语言中标识符由字母、下划线、数字组 成,且开头必须是字母或下划线。另外,关键字不能作为标识 符。因为C语言中区分大小写,所以B选项中的“FOR”可以 作为标识符来用。A选项中含有非法字符,所以选择A。
14 A【解析】B选项中函数pow x,e错误应该直接使 用expx函数。C选项中函数abs nl + e"x错误,应该使用 fabs返回浮点数的绝对值。D选项中powx,n参数顺序 错误。
15 B【解析】取模运算符“%”,二元运算符,具有左结 合性,参与运算的量均为整型。选项B中的a变量是double实 型,所以B不符合规定。
16 D【解析】C语言中利用Size0f函数判断数据类 型长度,在VC 6 0平台中,整型int占有4个字节,double型数 据占有8个字节。
17 D【解析】按照从键盘输入的数据可以判断字符1 给了变量a,字符2给了变量b,字符 CR即回车给了变量
字符3给了变量d。所以打印输出的结果为D选项。
18 A【解析】C语言的逻辑运算符比较特别,它的操 作数没有明确的数据类型,可以是任意合法的表达式,所以选 择A。
19 C【解析】本题中ifa-1b-1;与else d-3;之间 多了语句c 二2;所以会出现else语句的位置错误的编译失败
提示。
20 B【解析】cae常量表达式只是起语句标号作用, 并不是该处进行条件判断。在执行switch语句时,根据switch 的表达式,找到与之匹配的case语句,就从此cae子句执行下 去,不在进行判断,直到碰到break或函数结束为止。所以执 行内层switchy时只执行了 a++,此时a的值为1。然后执 行外层case 2语句的a++;b++;a为2,b为1。所以结果 为 B。
21 C【解析】由于内层循环for k-1; k3; k++ 后面直接跟了空语句“;”所以在循环内部什么操作也不做,跳 出外层循环后执行打印语句,所以打印了一个“ * ”,选择C。
22 D【解析】cae常量表达式只是起语句标号作用, 并不是该处进行条件判断。在执行switch语句时,根据switch 的表达式,找到与之匹配的case语句,就从此cae子句执行下 去,不再进行判断,直到碰到break或函数结束为止。简单的 说break是结束整个循环体,而continue是结束单次循环。B 选项中当产生的随机数n为4时要执行打印操作。C选项中 当产生的随机数为1和2时分别执行cs3与cSe4后面语句 的内容。由于存在break语句所以for循环不是固定执行8次, 执行次数与产生的随机数n有关系。
23 A【解析】第一次调用m二聊1 ,第二次为m 二 ff2,第三次为m = f4,即返回值为8。
24 A【解析】不能将一个整数直接赋给指针变量作为 地址,所以A是错误的。函数的返回值可以是地址,即指针。 函数调用中形参值的变化不会传递给实参。
25 B【解析】指针是用来存放地址的变量,用(类型 名*指针变量名)的形式定义。赋值时应将某个变量地址即 x赋给指针变量,所以选择B。
26 D【解析】D选项中x[2][3]定义的是一个两行三 列的二维数组,而在给数组元素赋值时却赋成了三行,所以 错误。
27 A【解析】本题中的函数fu的功能是将数组k 中前5个元素倒序,所以返回后数组k中的元素排列是5,,, 2,1,6,7,8,9,10。所以打印输出k[2]到k[7]元素的值,即 321678,所以选择A。
28 A【解析】本题中由fun函数可知,b[0] :a[0][0] _a[0][3] 二 1-4 二 -3,b[1] 二 a[1][1] _[1][2] 二 6-7 二 -1,b[2] :a[2][2] - [2][1] 二 11 -10 二 1,b[3] :a[3]
[3] -[3] [1] -16-13-3。所以主函数中打印y数组元素的 值为A选项。
29 C【解析】字符串的输入不能使用scnf "%s", s;而应该使用getss。
30 A【解析】根据题目中的定义可以知道SiZe0fp, 计算的是数组P中所有元素所占用的字节数,而不是char型 数据所占字节数。
31 A【解析】p是指向二维字符数组第二行One * Dream!的数组指针,所以长度是10,打印输出的也是该字 符串。
32 B【解析】本题中遇到“ \ ”字符循环结束,所以只统 计“\”之前的数字字符,所以为3。
33 A【解析】声明静态局部变量:函数调用结束后,其 占用的存储单元不释放,在下次该函数调用时,该变量保留上 一次函数调用结束时的值。本题子函数fun中的变量i和m 均为静态局部变量。所以第一次调用fu函数,返回m的值为 5,第二次再调用fun函数时,i的值为3,m的值已经是5 了,所 以执行 i + - m + 1,的值变为 9,m:i+x + y:9 +1 +1 :11。
34 C【解析】auto:函数中的局部变量,动态地分配存 储空间,数据存储在动态存储区中,在调用该函数时系统会给 它们分配存储空间,在函数调用结束时就自动释放这些存储空 间。register:为了提高效率,C语言允许将局部变量的值放在 CPU中的寄存器中,这种变量叫“寄存器变量”,只有局部自动 变量和形式参数可以作为寄存器变量。extern:外部变量(即全 局变量)是在函数的外部定义的,它的作用域为从变量定义处 开始,到本程序文件的末尾。如果外部变量不在文件的开头定 义,其有效的作用范围只限于定义处到文件终了。static:静态 局部变量属于静态存储类别,在静态存储区内分配存储单元。 在程序整个运行期间都不释放。
35 A 【解析】A 选项 struct ord 丨 int x; int y ; int z ; }
struct ord a;错误,不能在定义结构体的同时,又用结构体类型 名定义变量。应该写成B选项或者D选项的格式。
36 B【解析】结构体变量可以作为函数的参数和返回 值。作为函数的实参时,可以实现函数的传值调用。当使用结 构体变量作为函数的形参时,实参也应该是结构体变量名以实 现传值调用,实参将拷贝副本给形参,在被调用函数中改变形 参值对于调用函数中的实参没有影响。所以选择B。
37 A【解析】预处理命令是以“ #”号开头的命令,它们 不是C语言的可执行命令,这些命令应该在函数之外书写,一 般在源文件的最前面书写,但不是必须在起始位置书写,所以 B、C错误。C语言的预处理能够实现宏定义和条件编译等功 能,所以D错误。
38 C【解析】malloc Sizef int的作用是开辟一个长 度为sizofint存储空间,并通过强制类型转换(int * 将此存 储空间的地址赋给了一个整型的指针变量P。然后执行语句 *p-n,使得* p的值为10,并通过return返回此值,即a的值 为10。然后在主函数中输出a + fun10 -10 + 10-20。
39 B【解析】无符号整型变量a的值为8,二进制表示 为00001000,右移3位后为00000001,即十进制的1,所以输 出1。
40 D 【解析】fread void * buffer ,size_t size, size_t count,FILE * seam;功能是从一个文件流中读数据,读取 count个元素,每个元素size字节,如果调用成功返回count。 buffer:用于接收数据的内存地址,大小至少是size * count字 节;size:单个元素的大小,单位是字节;count:元素的个数,每 个元素是size字节;stream:输入流。
二、程序填空题
【参考答案】
1 0 210 *x 3n10
【考点分析】
本题考查:已知某数,如何求该数各个位数值,已知各个位 数值,如何表示该数;除法运算。
【解题思路】
填空1:定义变量t用来存放某数的各个位数值,此处判断 t是否为偶数,即对2求余结果是否为0。
填空2:将t作为x的个位数,原来x的各个位上升1位, 即 x 二 10*x + 1。
填空3 :每循环一次,通过除法运算,去掉数值最后一位。
【解题宝典】
如果知道某数n的各个位的数值,可以得到该数值n,如n 的个位为a、十位为b、百位为c,那么n 二 c * 100 + b * 10+ a。 如果知道数值n,可以采用求余和除法操作来表示其各个位, 如n%10取个位)、n10取十位),读者可以自己考虑一下, 如果是三位数,如何提取各个位?四位数呢?
三、程序修改题
【参考答案】
⑴ * t 二0;
2 ifd%2! :0或 ifd%2 二二 1
【考点分析】
本题考查:指针型变量作为函数参数;if语句条件表达式, 结合奇偶数的表示方法来确定该表达式内容。
【解题思路】
1 由函数定义可知,变量t是指针变量,所以对t进行赋 初值0是不对的。因为t指向的是存放新数的变量,所以此处 应给新数赋初值0,p*t = 0。
2 变量d表示数s各个位上的数,此处的if条件应为判 断d是否为奇数。
参考答案及解析 无纸化真考题库试卷1
一、选择题
1 c 【解析】在数据流图中,用标有名字的箭头表示 数据流。在程序流程图中,用标有名字的箭头表示控制流。所 以选择C。
2 A 【解析】结构化程序设计的思想包括:自顶向下、 逐步求精、模块化、限制使用goto语句,所以选择A。
3 B【解析】软件设计中模块划分应遵循的准则是高 内聚低偶合、模块大小规模适当、模块的依赖关系适当等。模 块的划分应遵循一定的要求,以保证模块划分合理,并进一步 保证以此为依据开发出的软件系统可靠性强,易于理解和维 护。模块之间的耦合应尽可能的低,模块的内聚度应尽可能 的高。
4 B 【解析】A错误,可行性分析阶段产生可行性分 析报告。C错误,概要设计说明书是总体设计阶段产生的文 档。D错误,集成测试计划是在概要设计阶段编写的文档。B 正确,需求规格说明书是后续工作如设计、编码等需要的重要 参考文档。
5 A 【解析】算法原则上能够精确地运行,而且人们 用笔和纸做有限次运算后即可完成。有穷性是指算法程序的 运行时间是有限的。
⑻D 【解析】除了堆排序算法的比较次数是OOlogp, 其他的都是^U-12。
7 B 【解析】桟是按“先进后出”的原则组织数据的, 数据的插入和删除都在桟顶进行操作。
C 【解析】E-R图转换成关系模型数据则是把图 形分析出来的联系反映到数据库中,即设计出表,所以属于逻 辑设计阶段。
9 D 【解析】自然连接是一种特殊的等值连接,它要 求两个关系中进行比较的分量必须是相同的属性组,并且在结 果中把重复的属性列去掉,所以B错误。笛卡尔积是用R集 合中元素为第一元素,S集合中元素为第二元素构成的有序 对,所以C错误。根据关系T可以很明显地看出是从关系R 与关系S中取得相同的关系组所以取得是交运算,选择D。
10 C【解析】学号是学生表S的主键,课号是课程表C 的主键,所以选课表SC的关键字就应该是与前两个表能够直 接联系且能唯一定义的学号和课号,所以选择C。
11 A【解析】C语言中的非执行语句不会被编译,不 会生成二进制的机器指令,所以A错误。由C语言构成的指 令序列称C源程序,C源程序经过C语言编译程序编译之后生 成一个后缀为 OBJ的二进制文件称为目标文件);最后要由 “连接程序”把此 OBJ文件与C语言提供的各种库函数连接 起来生成一个后缀为 EXE的可执行文件。
12 A【解析】C语言中八进制整型常量的开头是数字 0,十六进制整型常量的数字开头是0x。C语言中的实型常量 有两种表示形式:小数形式,小数形式表示的实型常量必须要 有小数点;指数形式,以“e”或“E”后跟一个整数来表示以10 为底数的幂数,且规定字母e或E之前必须要有数字,且e或 E后面的指数必须为整数。B选项中028错误,八进制中没有 数字8 C选项中4e1 5中e后面的指数不是整数。D选项中
3 e5小数点后面缺少数字。
13 A【解析】C语言中标识符由字母、下划线、数字组 成,且开头必须是字母或下划线。另外,关键字不能作为标识 符。因为C语言中区分大小写,所以B选项中的“FOR”可以 作为标识符来用。A选项中含有非法字符,所以选择A。
14 A【解析】B选项中函数pow x,e错误应该直接使 用expx函数。C选项中函数abs nl + e"x错误,应该使用 fabs返回浮点数的绝对值。D选项中powx,n参数顺序 错误。
15 B【解析】取模运算符“%”,二元运算符,具有左结 合性,参与运算的量均为整型。选项B中的a变量是double实 型,所以B不符合规定。
16 D【解析】C语言中利用Size0f函数判断数据类 型长度,在VC 6 0平台中,整型int占有4个字节,double型数 据占有8个字节。
17 D【解析】按照从键盘输入的数据可以判断字符1 给了变量a,字符2给了变量b,字符 CR即回车给了变量
字符3给了变量d。所以打印输出的结果为D选项。
18 A【解析】C语言的逻辑运算符比较特别,它的操 作数没有明确的数据类型,可以是任意合法的表达式,所以选 择A。
19 C【解析】本题中ifa-1b-1;与else d-3;之间 多了语句c 二2;所以会出现else语句的位置错误的编译失败
提示。
20 B【解析】cae常量表达式只是起语句标号作用, 并不是该处进行条件判断。在执行switch语句时,根据switch 的表达式,找到与之匹配的case语句,就从此cae子句执行下 去,不在进行判断,直到碰到break或函数结束为止。所以执 行内层switchy时只执行了 a++,此时a的值为1。然后执 行外层case 2语句的a++;b++;a为2,b为1。所以结果 为 B。
21 C【解析】由于内层循环for k-1; k3; k++ 后面直接跟了空语句“;”所以在循环内部什么操作也不做,跳 出外层循环后执行打印语句,所以打印了一个“ * ”,选择C。
22 D【解析】cae常量表达式只是起语句标号作用, 并不是该处进行条件判断。在执行switch语句时,根据switch 的表达式,找到与之匹配的case语句,就从此cae子句执行下 去,不再进行判断,直到碰到break或函数结束为止。简单的 说break是结束整个循环体,而continue是结束单次循环。B 选项中当产生的随机数n为4时要执行打印操作。C选项中 当产生的随机数为1和2时分别执行cs3与cSe4后面语句 的内容。由于存在break语句所以for循环不是固定执行8次, 执行次数与产生的随机数n有关系。
23 A【解析】第一次调用m二聊1 ,第二次为m 二 ff2,第三次为m = f4,即返回值为8。
24 A【解析】不能将一个整数直接赋给指针变量作为 地址,所以A是错误的。函数的返回值可以是地址,即指针。 函数调用中形参值的变化不会传递给实参。
25 B【解析】指针是用来存放地址的变量,用(类型 名*指针变量名)的形式定义。赋值时应将某个变量地址即 x赋给指针变量,所以选择B。
26 D【解析】D选项中x[2][3]定义的是一个两行三 列的二维数组,而在给数组元素赋值时却赋成了三行,所以 错误。
27 A【解析】本题中的函数fu的功能是将数组k 中前5个元素倒序,所以返回后数组k中的元素排列是5,,, 2,1,6,7,8,9,10。所以打印输出k[2]到k[7]元素的值,即 321678,所以选择A。
28 A【解析】本题中由fun函数可知,b[0] :a[0][0] _a[0][3] 二 1-4 二 -3,b[1] 二 a[1][1] _[1][2] 二 6-7 二 -1,b[2] :a[2][2] - [2][1] 二 11 -10 二 1,b[3] :a[3]
[3] -[3] [1] -16-13-3。所以主函数中打印y数组元素的 值为A选项。
29 C【解析】字符串的输入不能使用scnf "%s", s;而应该使用getss。
30 A【解析】根据题目中的定义可以知道SiZe0fp, 计算的是数组P中所有元素所占用的字节数,而不是char型 数据所占字节数。
31 A【解析】p是指向二维字符数组第二行One * Dream!的数组指针,所以长度是10,打印输出的也是该字 符串。
32 B【解析】本题中遇到“ \ ”字符循环结束,所以只统 计“\”之前的数字字符,所以为3。
33 A【解析】声明静态局部变量:函数调用结束后,其 占用的存储单元不释放,在下次该函数调用时,该变量保留上 一次函数调用结束时的值。本题子函数fun中的变量i和m 均为静态局部变量。所以第一次调用fu函数,返回m的值为 5,第二次再调用fun函数时,i的值为3,m的值已经是5 了,所 以执行 i + - m + 1,的值变为 9,m:i+x + y:9 +1 +1 :11。
34 C【解析】auto:函数中的局部变量,动态地分配存 储空间,数据存储在动态存储区中,在调用该函数时系统会给 它们分配存储空间,在函数调用结束时就自动释放这些存储空 间。register:为了提高效率,C语言允许将局部变量的值放在 CPU中的寄存器中,这种变量叫“寄存器变量”,只有局部自动 变量和形式参数可以作为寄存器变量。extern:外部变量(即全 局变量)是在函数的外部定义的,它的作用域为从变量定义处 开始,到本程序文件的末尾。如果外部变量不在文件的开头定 义,其有效的作用范围只限于定义处到文件终了。static:静态 局部变量属于静态存储类别,在静态存储区内分配存储单元。 在程序整个运行期间都不释放。
35 A 【解析】A 选项 struct ord 丨 int x; int y ; int z ; }
struct ord a;错误,不能在定义结构体的同时,又用结构体类型 名定义变量。应该写成B选项或者D选项的格式。
36 B【解析】结构体变量可以作为函数的参数和返回 值。作为函数的实参时,可以实现函数的传值调用。当使用结 构体变量作为函数的形参时,实参也应该是结构体变量名以实 现传值调用,实参将拷贝副本给形参,在被调用函数中改变形 参值对于调用函数中的实参没有影响。所以选择B。
37 A【解析】预处理命令是以“ #”号开头的命令,它们 不是C语言的可执行命令,这些命令应该在函数之外书写,一 般在源文件的最前面书写,但不是必须在起始位置书写,所以 B、C错误。C语言的预处理能够实现宏定义和条件编译等功 能,所以D错误。
38 C【解析】malloc Sizef int的作用是开辟一个长 度为sizofint存储空间,并通过强制类型转换(int * 将此存 储空间的地址赋给了一个整型的指针变量P。然后执行语句 *p-n,使得* p的值为10,并通过return返回此值,即a的值 为10。然后在主函数中输出a + fun10 -10 + 10-20。
39 B【解析】无符号整型变量a的值为8,二进制表示 为00001000,右移3位后为00000001,即十进制的1,所以输 出1。
40 D 【解析】fread void * buffer ,size_t size, size_t count,FILE * seam;功能是从一个文件流中读数据,读取 count个元素,每个元素size字节,如果调用成功返回count。 buffer:用于接收数据的内存地址,大小至少是size * count字 节;size:单个元素的大小,单位是字节;count:元素的个数,每 个元素是size字节;stream:输入流。
二、程序填空题
【参考答案】
1 0 210 *x 3n10
【考点分析】
本题考查:已知某数,如何求该数各个位数值,已知各个位 数值,如何表示该数;除法运算。
【解题思路】
填空1:定义变量t用来存放某数的各个位数值,此处判断 t是否为偶数,即对2求余结果是否为0。
填空2:将t作为x的个位数,原来x的各个位上升1位, 即 x 二 10*x + 1。
填空3 :每循环一次,通过除法运算,去掉数值最后一位。
【解题宝典】
如果知道某数n的各个位的数值,可以得到该数值n,如n 的个位为a、十位为b、百位为c,那么n 二 c * 100 + b * 10+ a。 如果知道数值n,可以采用求余和除法操作来表示其各个位, 如n%10取个位)、n10取十位),读者可以自己考虑一下, 如果是三位数,如何提取各个位?四位数呢?
三、程序修改题
【参考答案】
⑴ * t 二0;
2 ifd%2! :0或 ifd%2 二二 1
【考点分析】
本题考查:指针型变量作为函数参数;if语句条件表达式, 结合奇偶数的表示方法来确定该表达式内容。
【解题思路】
1 由函数定义可知,变量t是指针变量,所以对t进行赋 初值0是不对的。因为t指向的是存放新数的变量,所以此处 应给新数赋初值0,p*t = 0。
2 变量d表示数s各个位上的数,此处的if条件应为判 断d是否为奇数。
|
|