首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。 【说明】 在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改
admin
2009-05-15
76
问题
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。
【说明】
在一图像处理系统中,开发者定义了一个图像结构ImageCon,其中定义了图像应该具有的属性。当图像件的内容或状态发生变化时,与之相关联的ImageView结构的值都需要发生改变。一个ImageCon结构能够关联一组ImageView结构。当ImageCon结构的内容或状态发生变化时,所有与之相关联的ImageView结构都将被更新,这种应用被称为观察者模式。以下代码采用C语言实现,能够正确编译通过。
【C代码】
#include <stdio.h>
#define OBS_MAXNUM 20/*一个ImageCon变量最多能够关联的ImageView变量的个数*/
typedef void (1) (struc ImageCon *,struct ImageView *);
struct ImageView{
func update; /*ImageView结构采用的更新函数*/
/*其他的结构字段省略*/
};
struct ImageCon{
(2) myObs[OBS_MAXNUM];
/*存储所有与ImageCon相关联的ImageView结构指针*/
intindex; /*与ImageCon结构变量相关联的ImageView结构变量的个数*/
};
void attach(struct ImageCon *IMG,struct ImageView *ob){
/*关联Obersver结构ob与ImageCon结构IMG*/
int loop=0;
if(IMG→index>=OBS_MAXNUM||ob==NULL)return;
for(loop=0;loop<IMG→index;loop++)
if(IMG→myObs [loop]= =ob)return;
IMG→myObs[IMG→index]=ob;
IMG→index++;
}
void detach(struct ImageCon *IMG,struct ImageView *ob){
/*解除IMG结构与ob结构间的关系*/
int loop;
if(ob= =NULL)return;
for(loop=0;loop<IMG→index;loop++){
if(IMG→myObs[loop]= =ob){
if(loop<=IMG→index-2)
IMG→myObs[loop]=IMG→myObs[ (3) ];
IMG→myObs[IMG→index-1]=NULL;
IMG→index- -;
breack;
}
}
}
void updatel(struct ImageCon *IMG,struct ImageView *ob){
/*更新ob结构的值,更新代码省略*/
}
void update2(struct ImageCon *IMG,struct ImageView *ob){
/*更新ob结构的值,更新代码省略*/
}
void notifyObs(struct ImageCon *IMG){
/*当IMG结构的值发生变化时,通知与之关联的所有ImageView结构变量*/
int loop;
for(loop=0;loop<IMG→index;loop++){
(IMG→myObs[loop])→update (4);
}
}
void main(){
struct ImageCon IMG;/*定义一ImageCon变量*/
struct ImageView explorer1,explorer2;/*定义两个ImageView变量*/
/*初始化与ImageCon变量相关的ImageView变量个数为0*/
IMG.index=0;
explorer1.update=updatel;/*设置explorerl变量的更新函数*/
explorer2.update=update2;/*设置explorer2变量的更新函数*/
attach(&IMG,&explorer1);/*关联explorer1与IMG对象*/
attach(&IMG,&explorer1);/*关联explorer1与IMG对象*/
/*其他代码省略*/
(5);
return;
}
选项
答案
(3)index-1
解析
将index-1处的值赋给loop处的值。
转载请注明原文地址:https://kaotiyun.com/show/JujZ777K
本试题收录于:
程序员上午基础知识考试题库软考初级分类
0
程序员上午基础知识考试
软考初级
相关试题推荐
请根据表11-1中的选项,把(1)~(5)填写完整。在Linux系统中有如下3个语句,请分别说出他们所执行的任务名称。(1)/etc/rc.d/init.d/dhcpdstart(2)/etc/rc.d/init.d/dhcpdst
试题四阅读以下说明,回答【问题1】至【问题3】,将解答填入对应的解答栏内。【说明】某留言板采用ASP+Access开发,其后台管理登录页面如图4-1所示,留言板页面如图4-2所示。
阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】某公司使用ASP开发商务网站,网页制作过程使用了CSS技术,该网站具有商品介绍、会员管理、在线支付和物流管理等功能,采用SQLServer数据库,数据库名称为business,
阅读以下关于Linux网卡安装和配置过程的说明,回答问题1~问题5,将解答填入答题纸对应的解答栏内。【说明】某个采用动态IP地址分配策略的计算机使用了最新的BCM5751网卡芯片,由于RedHatLinux9操作系统无法自动识别此
阅读以下说明,回答问题1至问题6,将解答填入答题纸对应的解答栏内。(2008年11月下午试题二)【说明】某公司有人力资源部和销售部两个部门,各有26台主机序需接入Internet。其中销售部同时在线用户数通常小于15。ISP为公司分配
图3.45所示为某一公司的网络拓扑结构,请在图中标出公共网络、内部网络、DMZ区、内部关键服务器群的位置。
使用常用文字编辑工具编辑正文时,为改变该文档的文件名,常选用(1)命令;在“打印预览”方式下,单击“(2)”按钮可返回编辑文件:将正文中所有“Computer”改写为“计算机”,常选用(3)命令。
(15)技术是在主存中同时存放若干个程序,并使这些程序交替执行,以提高系统资源的利用率。
为了保障数据的存储和传输安全,需要对一些重要数据进行加密。由于对称密码算法(49),因此特别适合对大量的数据进行加密。
多媒体制作公司甲擅自将工程师乙发表在《计算机应用》上的系列文章《多媒体制作技术与方法》制作成光盘,则甲(51)。
随机试题
血清标本的除菌可用
室内卫生器具的排水支管隐蔽前必须做()。
多设有搅拌装置及传热装置的反应器是()。
结构性外汇理财产品的客户投资者面临的风险由下列哪些因素导致?()(2012年下半年)
()是社会服务机构基于组织目标和需求,对政府、企业、社会大众或基金会等,发动募集金钱、物资或劳务的行动或过程。
心电图中心房除极产生的波是()。
下列哪些人物是犹太民族的?()
“官当”是封建社会允许官吏以官职爵位折抵徒刑的一种特权制度,它正式出现在()。
Whatdoestheword"valentines"refertointhepassage?
Whatisthemaintopicofthisconversation?
最新回复
(
0
)