首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下函数说明和C代码,将应填入(n)处的字句写在答题纸对应栏内。 【说明】 在某些系统中,存在非常复杂的对象,可以采用循序渐进的方式,进行组合将小对象组合成复杂的对象。以下实例展示了Builder(生成器)模式。该实例用来建立“文件”,文件内容包括:一
阅读以下函数说明和C代码,将应填入(n)处的字句写在答题纸对应栏内。 【说明】 在某些系统中,存在非常复杂的对象,可以采用循序渐进的方式,进行组合将小对象组合成复杂的对象。以下实例展示了Builder(生成器)模式。该实例用来建立“文件”,文件内容包括:一
admin
2014-10-11
77
问题
阅读以下函数说明和C代码,将应填入(n)处的字句写在答题纸对应栏内。
【说明】
在某些系统中,存在非常复杂的对象,可以采用循序渐进的方式,进行组合将小对象组合成复杂的对象。以下实例展示了Builder(生成器)模式。该实例用来建立“文件”,文件内容包括:一个标题、一串字符以及一些有项目符号的项目。Builder类规定组成文件的方法,Director类利用这个方法产生一份具体的文件。图7一1显示了各个类间的关系。
【图7—1】
以下是C语言实现,能够正确编译通过。
【C代码】
typedef void(1)(char*title);
typedef void(*fun2)(char items[1[10],int N);
typedef char*(*fun3)();
char buffer[500];
struct Builder(//构造器
funl makeTitle;
(2)makeString;
fun2 makeItems;
fun3 getResult;
};
struct Director{
struct Buiider buiider;
};
char。construct((3)director)//构造文件
{
char items[2][10]=(”早安”,”午安”);
director一>buiider.makeTitle(“Greeting”);
director一>builder.makeString(“从早上到白天结束”);
directot一>buiider.makeItems(items,2);
director一>builder.makeString(“到了晚上”);
strcpy(items[0],“晚安”);
strcpy(items[1],“好梦”);
directot一>buiider.makeItems(items,2);
return director一>buiider.getResult();
}
void TXTmakeTitle(char*title)
{
strcat(buffer,“『”);
Strcat(buffer,title);
strcat(buffer,“』\n\n”);
}
void TXTmakeString(char* str)
{
strcat(buffer,“■”);
Strcat(burfer,str);
Strcat(butter, “\n\n”);
)
void TXTmakeItems(char items[][10],int N)//将items加入文件中
{
for(int i=0;i
Strcat(buffer,”.”);
strcat(buffer, (4));
Strcat(buffer,“\n”);
}
Strcat(buffer,“\n”);
}
char* TXTgetResult()
{
return buffer;
}
void main()
{
Director director;
(5) =‘\0’;//清空缓冲区,使目前缓冲区中的内容不影响新生成的文件
director.buiider.makeTitle=TXTmakeTitle;
director.buiider.makeString=TXTmakeTitle;
director.bui ider.makeItems=TXTmakeItems;
director.buiider.getResult =TXTgetResult;
char*result=construct(&director);
printf(“%S\n”,result);
}
选项
答案
(1)*funl (2)funl (3)structDirector* (4)items[i1 (5)buffer[0]
解析
先看空(3),首先函数construct的形参director应该与Director结构体相关,再根据函数体中的引用方式“director一>builder.makeTitle(“Greeting”);可知director是一个指针,因此空(3)应填structDirector*。由语句“char*result=construct(&director);”也可进一步确认。函数TXTmakeItems(charitems[][10],intN)是将items加入文件中,因此语句strcat(buffer,(4);是将第i个items加入缓冲区buffer中,strcat函数的原型为:char*strcat(char*strDestination,constchar*strSource);。因此空(4)应填items
。由注释可知语句“buffer[0]=(5)”是用来清除缓冲区的,其目的是使目前缓冲区中的内容不影响新生成的文件,就一个语句,事实上不可能清除缓冲区中的所有内容,但纵观生成文件,关键语句就是strcat,这样只要将缓冲区第一个单元的值置为“\0”(字符串结束标志),就能保证正确生成文件。故空(5)应填buffer[0]。
转载请注明原文地址:https://kaotiyun.com/show/U4DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
目前,通过移动电话接人互联网采用的主要技术是什么?公司网络中的设备或系统(包括存储商业机密的数据库服务器、邮件服务器、存储资源代码的PC机、应用网关、存储私人信息的PC机、电子商务系统)哪些应放在DMZ中,哪些应放在内网中?给予简要说明。
在由L2TP构建的VPN中,主要由①和②两种类型的服务器构成。1.将图5-1中①和②处空缺名称填写在答题纸的相应位置。2.简要说明两种服务器的主要作用。某路由器(在图5-1中没有标出)的部分配置信息如下所示,请解释其中标有下划线部分的含
将图2-1中(1)和(2)空缺名称填写在应的位置。按照G.lite的最高速率标准,上传24MB的文件需要多少秒时间?
SSL协议使用(1)密钥体制进行密钥协商。在IIS5.0中,Web服务器管理员必须首先安装Web站点数字证书,然后Web服务器才能支持SSL会话,数字证书的格式遵循ITU-T(2)标准。通常情况下,数字证书需要由(3)颁发。如果Web服务器管理员希望W
双绞线可以制作成直连线和交叉线两种形式。在上图中,两个交换机的UPLINK口相连,使用的双绞线制作成什么形式?连接交换机和计算机的双绞线制作成什么形式?阅读下面的配置信息,解释(5)处的命令。Switch#Switch#config
该DHCP服务器可分配的IP地址有多少个?在Windows操作系统下,DHCP客户端“Internet协议(TCP/IP)属性”配置界面如下图所示。在此界面中,客户端应如何配置?
启动init进程前,不需要经过______步骤。A.LIIO加载内核B.检测内存C.加载文件系统D.启动网络支持在系统控制台,______用Ctrl+Alt+Delete组合键来重新引导服务器。A.允许B
在“管理工具”中运行“管理IP筛选器列表”,创建一个名为“SNMP消息”的筛选器。在如图12-3所示的“IP筛选器向导”中指定IP通信的源地址,下拉列表框中应选择(1);在如图12-4中指定IP通信的目标地址,下拉列表框中应选择(2)。在图
在“管理工具”中运行“管理IP筛选器列表”,创建一个名为“SNMP消息”的筛选器。在如图12-3所示的“IP筛选器向导”中指定IP通信的源地址,下拉列表框中应选择(1);在如图12-4中指定IP通信的目标地址,下拉列表框中应选择(2)。在图
随机试题
Shoppingforclothesisnotthesameexperienceforaman【C1】______itisforawoman.Amangoesshoppingbecauseheneedssomet
女性患者,30岁。睁眼困难伴复视2年,晨轻暮重,休息后好转,下列哪项检查有助明确诊断
A.指超过正常青春期开始平均年龄2.5个标准差以上尚无性成熟发育者B.分为体质性延迟、低促性腺激素性腺共能延迟、高促性腺激素性腺功能减退C.重视心理疏导,积极防治全身慢性病,改善营养状况D.患有中枢神经系统或卵巢肿瘤者,可用性激素替代疗法E
关于仲裁,下列说法不正确的有()。
下列哪种学习策略属于元认知策略?()
ThereisonewordthatisonthelipsofAmericans,dayandnight:"Sorry".OnetimeasIwaswalkingonthestreet,ayoungman
货币之所以能够充当价值尺度,从根本上说是因为()。
某人在一封信中这样写道:“前些年我在曼彻斯特看见过鸭嘴兽的蛋,因而无知地嘲笑过哺乳动物会下蛋的这种愚蠢之见,现在终于被证实了",从信中可以看出写信人以前错误地认为()。
信道速率为4kb/s,采用停止一等待协议,传播时延tp=20ms,确认帧长度和处理时间均可忽略。问帧长为多少才能使信道利用率达到至少50%?
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:每卖出一个瓜,则计算瓜的重量,还要计算所有卖出瓜的总重量以及总个数,同时允许退货,请按照以下的操作,把类补充完整
最新回复
(
0
)