程序员历年答案分析2005---2011年全部详细答案(17)

时间:2025-04-19

编译过程一般分为词法分析和语法分析。词法分析是从左到右逐字符的地读入源程序,识别

出一个个单词符号;它是根据语言的词法规则(单词结构规则)进行的。在此阶段出现的错

误为词法错误,当读入for语句时,如果源程序错写成了far,这就是典型的词法错误。接

下来是词法分析阶段,它是在词法分析的基础上将单词序列分解成各类短语序列,如循环语

句、赋值语句等。在此阶段查处的错误称为词法错误,此题中出现的错误明显为词法错误,

它违背了C语言中要求%号两侧均为整数的语法要求。

C语言提供了多种预处理功能,如宏定义、文件包含、条件编译等。合理地使用预处理功能

编写的程序便于阅读、修改、移植和调试,也有利于模块化程序设计。

●试题答案(42)B

【考查知识点】本题考查的是数组地址的计算。

【解析】二维数组存储地址的计算公式为:a+(i*n+j)*len。根据题意,本题中每个数据对

象len的值为1,但i、n、j的值在本题中有所变化。由于以列为主序,因此i应表示列值,

其取值范围是1~4,此公式针对下标从0开始的数组的,所以代入到公式中的值为i-1;j

表示行值,其取值范围为1~3,同理,带到公式中的值为j-1;而n的指标是每列元素的个

数,即应取4,所以得到:(2×4+1)×1=9。因为存储值二首地址+偏移量,所以退出偏移量

=9-2=7。

●试题答案(43)D (44)B

【考查知识的】本题考查的是程序中函数的调用。

【解析】由题意得,a的值为4,所以调用函数com(a)的值为8。

如果以引用调用的方式调用,那么b的值为8,a的值也会变成8,因此主程序输出a+b的

值为16。

如果已传值调用的方式调用,那么b的值为8,a的值不变,仍为4,因此主程序输出a+b

的值为12。

【总结与扩展】函数的传值调用和引用调用一直是程序员考试的重点,对两种函数调用的方

法总结如下:

传值调用又分为数据传值调用和地址传值调用。数据传值调用方式是将实参的数据值传递给

形参,实参和形参在栈空间内的地址不相同,改变形参值不影响实参值。地址传值调用方式

是将实参的地址传递给形参,实参和形参在栈空间内共用同一地址,改变形参值就可改变实

参值。

引用调用是将实参调用值传递给形参,而形参是实参变量的引用名。引用是给一个已有变量

起的别名,对引用的操作就是对该已有变量的操作。引用调用可以起到地址传值调用的作用,

即改变形参就可改变实参值。引用调用比地址传值调用更为简单,在C++较多地使用引用调

用代替地址传值调用。

●试题答案(45)A (46)D

【考查知识点】本题考查的是数据库中笛卡尔积的运算。

【解析】根据笛卡尔积的运算法则,如果R关系模式有r个属性,S关系模式有s个属性,

那么该运算的结果会产生(r+s)个属性的元素组合,元素数量为两个关系模式元组数量的

乘积。每个院组的前r个属性来自关系模式R,后s个属性来自关系模式S。而笛卡尔积的

结果可以表示为一个二维表,同时也是一个集合、一个关系。D1有3个元组,D2有2个元组,

所以D1×D2的结果是3×2=6个元组。

●试题答案(47)D (48)B

【考查知识点】本题考查的是SQL语言的基础知识。

【解析】(47)题的考点有两个,一是条件判断中字符串必须加上单引号,故排除A、B。二

是WITH CHECK OPTION子句。如果该子句不存在,那么某个使用该视图的用户就有可能更新

程序员历年答案分析2005---2011年全部详细答案(17).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219