【C++代码】
#include <list>
#include <iostream>
#include <string>
using namespace std;
class AbstractFile{
protected:
string name; //文件或目录名称
public:
void printName(){cout<<name;} //打印文件或目录名称
virtual void addChild(AbstractFile *file)=0; //给一个目录增加子目录或文件}
virtual void removeChild(AbstractFile *file)=0; //删除一个目录的子目录或文件
virtual list<AbstractFile*> *getChildren()=0; //获得一个目录的子目录或文件
};
class File:public AbstractFile{
public:
File(string name) {(1) = name;}
void addChild(AbstractFile *file){return;}
void removeChild(AbstractFile *file){return;}
(2) getChildren(){return (3) ;}
};
class Folder :public AbstractFile{
private:
list <AbstractFile*> childList: //存储子目录或文件
public:
Folder(string name){ (4) name;}
void addChild(AbstractFile*file){childList.push_back(file);}
void removeChild(AbstractFile*file){childList.remove(file);}
list<AbstractFile*>*getChildren(){return (5) ;}
};
void main(){
//构造一个树形的文件/目录结构
AbstractFile *rootFolder=new Folder("c:\\ ");
AbstractFile*compositeFolder=new Folder("composite");
AbstractFile *windowsFolder=new Folder("windows");
AbstractFile*file=new File("TestCompositejava");
rootFolder->addChild(compositeFolder);
rootFolder->addChild(windowsFolder);
compositeFolder->addChild(file);
}
第1题:
有以下程序 #include<stdio.h> main() { int a=5,b=lt; t=(a<<2)|b;printf("%d\n",t); } 程序运行后的输出结果是______。
A.21
B.11
C.6
D.1
第2题:
正常售票的快捷键是()。
A.lt+P
B.trl+P
C.lt+T
D.lt+S
第3题:
7、已知lt=[1,2,3],下面表达式能够修改lt为[1,2,3,4]的是
A.lt+=4
B.lt.append(4)
C.lt.insert(3,4)
D.lt.insert(-1,4)
第4题:
若有运算符:>;、一、<;<;、%、sizeof,则它们按优先级(由高至低)的正确排列顺序为( )。
A.%、sizeof、>;、<;<;、=
B.sizeof、%、>;、一、<;<;
C.sizeof、<;<;、>;、%、=
D.sizeof、%、<;<;、>;、=
第5题:
设有一列表lt,实现下列功能: 判断lt中是否包含数字0 向lt新增数字0 返回数字0所在lt中的索引 lt的长度 lt中最大元素 清空lt
第6题:
已知lt=[1,2,3],下面表达式能够修改lt为[1,2,3,4]的是
A.lt+=4
B.lt.append(4)
C.lt.insert(3,4)
D.lt.insert(-1,4)