问题 单项选择题

以下4个程序中,不能实现两个实参值进行交换的是 ( )。

A.void swap (float *p, float * { float *t ,a; t = &a; t = p; *p = *q; *q = *t; }void main () { float x = 8.0;y = 9.0; swap (&x, &; cout<<x<<", "<<y<<end1; }

B.void swap (float *p, float * {float a;a = *p; *p = *q; *q = a; } void main() { float x = 8.0;y = 9.0; swap (&x, &; cout<<x<<", "<<y<<end1; }

C.void swap (float *p, float * {float x;x = *p; *p = *q; *q = x; } void main() { float a,; *a = 8.0;*b = 9.0; swap (a, ; cout<<x<<", "<<y<<end1; }

D.void swap (float &p, float & {float a;a = p; p = q; q = a; } void main() {float a = 8.0,b = 9.0;swap (a,;cout<<x<<", "<<y<<end1; }

答案

参考答案:C

解析: 本题考核指针和引用作为函数形参。做此类题时,应学会整体比较,要不然花费的时间不亚于一个大的编程题。 ①首先,这4个程序都是调用swap函数,而且目的都一致,交换传入的两个实参值。 ②分析被调函数swap()。在选项A、B和C中都是指针作为形参,只有在选项D中,函数swap()是以引用作为形参。由指针和引用作为函数形参的特点可知,只要调用了函数,就能达到交换两个实参变量的值,所以这几个被调函数没有问题。 ③再看主函数。在选项C中,没有定义指针类型变量,而是直接给指针变量赋值: “floata,b;*a=8.0;*b=9.0;”,这显然是非法的。想直接开辟存储空间,交换两个常量值,是不可能的。所以只有选项C是错误的。

单项选择题 A1型题
问答题

某房屋建筑工程项目,建设单位与施工单位按照《建设工程施工合同(示范)文本》签订了施工承包合同。施工合同中规定:
(1)设备由建设单位采购,施工单位安装;
(2)建设单位原因导致的施工单位人员窝工,按18元/工日补偿,建设单位原因导致的施工单位设备闲置,按表5-3中所列标准补偿;
(3)施工过程中发生的设计变更,其价款按建标[2003]206号文件的规定以工料单价法计价程序计价(以直接费为计算基础),间接费费率为10%,利润率为5%,税率为3.41%。
表5-3 设备闲置补偿标准表

机械名称台班单位/(元/台班)补偿标准
大型起重机1060台班单价的60%
自卸汽车(5t)318台班单价的40%
自卸汽车(8t)458台班单价的50%
该工程在施工过程中发生以下事件。
事件1:施工单位在土方工程填筑时,发现取土区的土壤含水量过大,必须经过晾晒后才能填筑,增加费用30000元,工期延误10天。
事件2:基坑开挖深度为3m,施工组织设计中考虑的放坡系数为0.3(已经工程师批准)。施工单位为避免坑壁塌方,开挖时加大了放坡系数,使土方开挖量增加,导致费用超支10000元,工期延误3天。
事件3:施工单位在主体钢结构吊装安装阶段发现钢筋混凝土结构上缺少相应的预埋件,经查实是由于土建施工图纸遗漏该预埋件的错误所致。返工处理后,增加费用20000元,工期延误 8天。
事件4:建设单位采购的设备没有按计划时间到场,施工受到影响,施工单位一台大型起重机、两台自卸汽车(载重5t、8t各一台)闲置5天,工人窝工86工日,工期延误5天。
事件5:某分项工程由于建设单位提出工程使用功能的调整,必须进行设计变更。设计变更后,经确认直接工程费增加18000元,措施费增加2000元。
上述事件发生后,施工单位及时向建设单位造价工程师提出索赔要求。
[问题]分析以上各事件中监理工程师是否应该批准施工单位的索赔要求为什么
2.对于工程施工中发生的工程变更,监理工程师对变更部分的合同价款应根据什么原则确定
3.监理工程师应批准的索赔金额是多少元工程延期是多少天