YTU 2960: 改错题--小鼠标,你要干什吗?
2960: 改错题--小鼠标,你要干什吗?
时间限制: 1 Sec 内存限制: 128 MB
提交: 118 解决: 62
题目描述
鼠标双击不同的图标产生不同的效果,比如双击文档(document)文件,则打开文档文件;双击图形(graphics)文件,则显示图形;双击视频(video)文件,则播放视频。下面程序是鼠标的双击三种文档、图形和视频类型文件的程序。
注:本题只需要提交修改和完善部分的代码,请按照C++方式提交。
#include <string>
#include <iostream>
using namespace std;
/* 修改和完善该部分代码
class Filetype
{
public:
void DoubleClick() =0;
virtual Filetype(string name)
{
Filename = name;
}
string getFilename()
{
return Filename;
}
virtual ~Filetype() {}
private:
string Filename;
};
*/
class Documenttype:public Filetype
{
public:
void DoubleClick()
{
cout<<"Document file :"<< getFilename()<<endl;
}
Documenttype(string name):Filetype(name)
{
}
};
class Graphicstype:public Filetype
{
public:
void DoubleClick()
{
cout<<"Graphics file :"<< getFilename()<<endl;
}
Graphicstype(string name):Filetype(name)
{
}
};
class Videotype:public Filetype
{
public:
void DoubleClick()
{
cout<<"Video file :"<< getFilename()<<endl;
}
Videotype(string name):Filetype(name)
{
}
};
int main()
{
string name;
Filetype *ptype;
cin>>name;
ptype=new Documenttype(name);
ptype->DoubleClick();
delete ptype;
cin>>name;
ptype=new Graphicstype(name);
ptype->DoubleClick();
delete ptype;
cin>>name;
ptype=new Videotype(name);
ptype->DoubleClick();
delete ptype;
return 0;
}
输入
输入有3行
第一行是一个文档文件名,第二行是一个图形文件名,第三行是一个视频文件名
输出
第一行输出Document file :文档文件名
第二行输出Graphics file :图形文件名
第三行输出Video file :视频文件名
样例输入
a.txt
b.bmp
c.mp4
样例输出
Document file :a.txt
Graphics file :b.bmp
Video file :c.mp4
你 离 开 了 , 我 的 世 界 里 只 剩 下 雨 。 。 。
#include <string>
#include <iostream>
using namespace std;
class Filetype
{
public:
virtual void DoubleClick() =0;
Filetype(string name)
{
Filename = name;
}
string getFilename()
{
return Filename;
}
virtual ~Filetype() {}
private:
string Filename;
};
class Documenttype:public Filetype
{
public:
void DoubleClick()
{
cout<<"Document file :"<< getFilename()<<endl;
}
Documenttype(string name):Filetype(name){}
};
class Graphicstype:public Filetype
{
public:
void DoubleClick()
{
cout<<"Graphics file :"<< getFilename()<<endl;
}
Graphicstype(string name):Filetype(name){}
};
class Videotype:public Filetype
{
public:
void DoubleClick()
{
cout<<"Video file :"<< getFilename()<<endl;
}
Videotype(string name):Filetype(name){}
};
int main()
{
string name;
Filetype *ptype;
cin>>name;
ptype=new Documenttype(name);
ptype->DoubleClick();
delete ptype;
cin>>name;
ptype=new Graphicstype(name);
ptype->DoubleClick();
delete ptype;
cin>>name;
ptype=new Videotype(name);
ptype->DoubleClick();
delete ptype;
return 0;
}
#include <iostream>
using namespace std;
class Filetype
{
public:
virtual void DoubleClick() =0;
Filetype(string name)
{
Filename = name;
}
string getFilename()
{
return Filename;
}
virtual ~Filetype() {}
private:
string Filename;
};
class Documenttype:public Filetype
{
public:
void DoubleClick()
{
cout<<"Document file :"<< getFilename()<<endl;
}
Documenttype(string name):Filetype(name){}
};
class Graphicstype:public Filetype
{
public:
void DoubleClick()
{
cout<<"Graphics file :"<< getFilename()<<endl;
}
Graphicstype(string name):Filetype(name){}
};
class Videotype:public Filetype
{
public:
void DoubleClick()
{
cout<<"Video file :"<< getFilename()<<endl;
}
Videotype(string name):Filetype(name){}
};
int main()
{
string name;
Filetype *ptype;
cin>>name;
ptype=new Documenttype(name);
ptype->DoubleClick();
delete ptype;
cin>>name;
ptype=new Graphicstype(name);
ptype->DoubleClick();
delete ptype;
cin>>name;
ptype=new Videotype(name);
ptype->DoubleClick();
delete ptype;
return 0;
}
YTU 2960: 改错题--小鼠标,你要干什吗?的更多相关文章
- YTU 2844: 改错题A-看电影
2844: 改错题A-看电影 时间限制: 1 Sec 内存限制: 128 MB 提交: 69 解决: 47 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方式提交. 小平家长为 ...
- YTU 2580: 改错题----修改revert函数
2580: 改错题----修改revert函数 时间限制: 1 Sec 内存限制: 128 MB 提交: 194 解决: 82 题目描述 修改revert函数,实现输入N个数,顺序倒置后输出 #i ...
- YTU 2838: 改错题AB-装置连接
2838: 改错题AB-装置连接 时间限制: 1 Sec 内存限制: 128 MB 提交: 81 解决: 49 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方式提交. 有AB ...
- YTU 2639: 改错题:类中私有成员的访问
2639: 改错题:类中私有成员的访问 时间限制: 1 Sec 内存限制: 128 MB 提交: 431 解决: 297 题目描述 /* 改错题: 设计一个日期类和时间类,并编写全局函数displ ...
- YTU 2610: A改错题--体检情况分析
2610: A改错题--体检情况分析 时间限制: 1 Sec 内存限制: 128 MB 提交: 233 解决: 161 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方式提交. ...
- YTU 2609: A改错题--学生信息的输入和输出
2609: A改错题--学生信息的输入和输出 时间限制: 1 Sec 内存限制: 128 MB 提交: 238 解决: 157 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方 ...
- YTU 2955: A改错题--销售部的打印机
2955: A改错题--销售部的打印机 时间限制: 1 Sec 内存限制: 128 MB 提交: 61 解决: 47 题目描述 销售部新进了一台快速打印机,使用频率很高.为了能够对打印情况进行统计 ...
- YTU 2954: A改错题--是虫还是草
2954: A改错题--是虫还是草 时间限制: 1 Sec 内存限制: 128 MB 提交: 83 解决: 55 题目描述 冬虫夏草为虫体与菌座相连而成,冬天是虫子,夏天却是草.根据类生物(bio ...
- YTU 2622: B 虚拟继承(虚基类)-沙发床(改错题)
2622: B 虚拟继承(虚基类)-沙发床(改错题) 时间限制: 1 Sec 内存限制: 128 MB 提交: 487 解决: 393 题目描述 有一种特殊的床,既能当床(Bed)用又能当沙发(S ...
随机推荐
- ELK的简单安装使用
ELK ELK是什么? Elasticsearch LogStash Kibana 1,简单的安装 我采用的是本地window环境: 下载的包如下: 首先安装的是jdk8,安装完成之后,设 ...
- notepad++编辑器写python需注意使用utf-8编码
语言:python3.4 文本编辑器:notepad++ 报错:SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0xb4 in ...
- [codeforces722D]Generating Sets
[codeforces722D]Generating Sets 试题描述 You are given a set Y of n distinct positive integers y1, y2, . ...
- hdu 1429 bfs+二进制状态压缩
开始时候只用了BFS,显然超时啊,必然在结构体里加一个数组什么的判重啊,开始用的一个BOOL数组,显然还是不行,复杂度高,每次都要遍历数组来判重:后百度之,学习了二进制状态压缩,其实就用一个二进制数来 ...
- SQL SERVER 2012 第四章 连接 JOIN の OUTER JOIN,完全连接FULL JOIN,交叉连接CROSS JOIN
SELECT <SELECT LIST> FROM <the table you want to be the "LEFT" table> <LEFT ...
- c++ 高性能日志库(muduo_AsyncLogging)
c++ 高性能日志库(muduo_AsyncLogging) 实现一个高效的网络日志库要解决那些问题? 首先明确一下问题的模型,这是一个典型的多生产者 单消费者问题,对于前端的日志库使用者来说,应该做 ...
- POJ 2192 【DP】
题意: 给三个字符串,判断前两个在相对顺序不变的情况下是否可以组成第三个字符串. 思路: 先说屌丝: dp[i][j]代表1串的前i个和2串的前j个字符在3串的前i+j个字符中最多能够组合出几个字符. ...
- 51nod 1907(多项式乘法启发式合并)
题目: 分析: 对于一个确定的生成子图,很明显是在一个连通块上走,走完了再跳到另一个连通块上,假设连通块个数为cnt,那么答案一定是$min(a_{cnt-1},a_cnt,..,a_{n-1})$ ...
- service mesh架构
service mesh 系列文章 https://my.oschina.net/iamlipeng/blog/1631575 http://developer.51cto.com/art/2018 ...
- Spring中使用Log4j记录日志
以下内容引用自http://wiki.jikexueyuan.com/project/spring/logging-with-log4j.html: 例子: pom.xml: <project ...