问题 问答题

编写函数fun(),它的功能是求n以内(不包括n)同时能被3与7整除的所有自然数之和的平方根s,并做为函数值返回。例如:n为1000时,函数值应为s=153.909064。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include <conio.h>
#include <math.h>
#include <stdio.h>
double fun(int n)




main()

clrscr();
printf("s=%f\n", fun(1000));

答案

参考答案:
double fun(int n)
{double s=0.0;
int i;
for(i=0; i<n;i++) /*从0~n中找到既能被3整除同时又能被7整除的数,并将这些数求和*/
if (i%3==0&&i%7==0)
s=s+i;
s=sqrt (s); /*对s求平方根*/
return s;
}

解析:本题的解题思路是逐个取得从0~n之间的所有数,对每次取得的数进行条件判断,条件是既能被3整除同时又能被7整除,注意:这两个条件要求同时成立,因此用到了“&及,’运算符。满足条什,该数就被累加到s中去,所有符合条件的数找完后,用sqd()函数(包含于头文件<math.h>中)对s求平方根。

问答题

某工程建设单位与甲施工单位按照《建设工程施工合同(示范文本)》签订了施工合同。经建设单位同意,甲施工单位选择了乙施工单位作为分包单位。在合同履行中,发生了如下事件。
事件1:在合同约定的工程开工日前,建设单位收到甲施工单位报送的工程开工报审表后即予处理。考虑到施工许可证已获政府主管部门批准且甲施工单位的施工机具和施工人员已经进场,便审核签认了工程开工报审表并通知了项目监理机构。
事件2:在施工过程中,甲施工单位的资金出现困难,无法按分包合同约定支付乙施工单位的工程款。乙施工单位向项目监理机构提出了支付申请。项目监理机构受理并征得建设单位同意后,即向乙施工单位签发了付款凭证。
事件3:专业监理工程师在巡视中发现,乙施工单位施工的某部位存在质量隐患,专业监理工程师随即向甲施工单位签发了整改通知。甲施工单位回函称,建设单位已直接向乙施工单位付款,因而本单位对乙施工单位施工的工程质量不承担责任。
事件4:甲施工单位向建设单位提交了工程竣工验收报告后,建设单位于2003年9月20日组织勘察、设计、施工、监理等单位竣工验收,工程竣工验收通过,各单位分别签署了质量合格文件。建设单位于2004年3月办理了工程竣工备案。因使用需要,建设单位于2003年10月初要求乙施工单位按其示意图在已验收合格的承重墙上开车库门洞,并于2003年10月底正式将该工程投入使用。2005年2月该工程给水排水管道大量漏水,经监理单位组织检查,确认是因开车库门洞施工时破坏了承重结构所致。建设单位认为工程还在保修期,要求甲施工单位无偿修理。建设行政主管部门对责任单位进行了处罚。
问题

根据《建设工程质量管理条例》,建设行政主管部门是否应该对建设单位、监理单位、甲施工单位和乙施工单位进行处罚,并说明理由。

单项选择题