2018年11月程序员考前模拟下午题(二)之五
作者:mb60efa0d0657ac2023-11-14 01:00:15
备考咨询 刷题指导
添加专属学姐
2024上半年软考备考资料+考试大纲
下载
摘要:对于【程序员】软考考试而言,试题无疑是最重要的学习资料之一。在软考备考过程中,吃透试题、掌握试题所考知识点、熟悉试题的出题思路,对我们提升分数的效果是最明显的,通过对试题的反复练习,还可以查漏补缺。今天,给大家带来【2018年11月程序员考前模拟下午题(二)】部分试题的详解,一起来看看吧~1、阅读下列说明和C++代码,将应填入( )处的字句写在答题纸的对应栏内。【说明】
摘要:对于【程序员】软考考试而言,试题无疑是最重要的学习资料之一。在软考备考过程中,吃透试题、掌握试题所考知识点、熟悉试题的出题思路,对我们提升分数的效果是最明显的,通过对试题的反复练习,还可以查漏补缺。今天,给大家带来【2018年11月程序员考前模拟下午题(二)】部分试题的详解,一起来看看吧~
1、阅读下列说明和C++代码,将应填入( )处的字句写在答题纸的对应栏内。【说明】某图像预览程序要求能够查看BMP、JPEG和GIF三种格式的文件,且能够Windows和Linux两种操作系统上运行。程序需具有较好的扩展性以支持新的文件格式和操作系统。为满足上述需求并减少所需生成的子类数目,现采用桥接(Bridge)模式进行设计,得到如图5-1所示的类图。【C++代码】#include
<iostream>
#include<:string>
;
Using namespace std;
class Matrix{//各种格式的文件最终都被转化为像素矩阵
//此处代码省略
};
class Implementor{
public:
( );显示像素矩阵 m
};
class WinImp:public
Implementor{
public:
Viod doPaint(Matrix m){/*调用 Windows 系统的绘制函数绘制像素矩阵*/
};
class LinuxImp:public
Implementor{/*调用 Linux 系统的绘制函数绘制像素矩阵*/}
};
class Image{
public:
viod setImp(Implement*imp) {this->imp=imp;}
Virtual viod parseFile(string fileName)=0
protected:
Implementor*imp;
};
class BMPImage:public
Image{
//此处省略代码
};
class GIFImage:public
Image{
Public:
viod parseFile(string fileName) {
//此处解析 GIF 文件并获得一个像素矩阵对象 m
( );显示像素矩阵 m
}
};
class JPEGImage:public
Image{
//此处代码省略
};
int main(){
//在 linux 操作系统上查看 demo.gif 图像文件
Image*image=( );
Implementor*imageImp=( );
( )
Image->parseFile(〝demo.gif〝);
return0;
}
答案:
答题解析:
1、阅读下列说明和C++代码,将应填入( )处的字句写在答题纸的对应栏内。【说明】某图像预览程序要求能够查看BMP、JPEG和GIF三种格式的文件,且能够Windows和Linux两种操作系统上运行。程序需具有较好的扩展性以支持新的文件格式和操作系统。为满足上述需求并减少所需生成的子类数目,现采用桥接(Bridge)模式进行设计,得到如图5-1所示的类图。【C++代码】#include
<iostream>
#include<:string>
;
Using namespace std;
class Matrix{//各种格式的文件最终都被转化为像素矩阵
//此处代码省略
};
class Implementor{
public:
( );显示像素矩阵 m
};
class WinImp:public
Implementor{
public:
Viod doPaint(Matrix m){/*调用 Windows 系统的绘制函数绘制像素矩阵*/
};
class LinuxImp:public
Implementor{/*调用 Linux 系统的绘制函数绘制像素矩阵*/}
};
class Image{
public:
viod setImp(Implement*imp) {this->imp=imp;}
Virtual viod parseFile(string fileName)=0
protected:
Implementor*imp;
};
class BMPImage:public
Image{
//此处省略代码
};
class GIFImage:public
Image{
Public:
viod parseFile(string fileName) {
//此处解析 GIF 文件并获得一个像素矩阵对象 m
( );显示像素矩阵 m
}
};
class JPEGImage:public
Image{
//此处代码省略
};
int main(){
//在 linux 操作系统上查看 demo.gif 图像文件
Image*image=( );
Implementor*imageImp=( );
( )
Image->parseFile(〝demo.gif〝);
return0;
}
答案:
1.virtual void doPaint(Matrix m) = 0
2. imp->doPaint(m)
3. new GIFImage()
4. new LinuxImp()
5. image->setImp(imageImp)
答题解析:
无
查看完整试题>>>
软考资料: 2024年软考论文范文> 软考考试核心重点难点汇总> 查看更多>
备考刷题:章节练习+每日一练> 软考历年试题+模拟题>查看更多>