问题 选择题

The number of various educational programs is increasing, _______ important roles have been realized by more and more people.

A.whose

B.where

C.which

D.that

答案

答案:A

题目分析:句意:各种各样的教育节目正在增加,越来越多的人意识到了教育的重要作用。这个句子包含一个非限制性定语从句,且关系词在从句中作定语,所以用关系代词whose,选A。

填空题
填空题

阅读下列说明和C++代码,将应填入 (n) 处的字句写在对应栏内。

[说明]

某饭店在不同的时段提供多种不同的餐饮,其菜单的结构图如图5-1所示。

现在采用组合(Composition)模式来构造该饭店的菜单,使得饭店可以方便地在其中增加新的餐饮形式,得到如图5-2所示的类图。其中MenuComponent为抽象类,定义了添加(add)新菜单和打印饭店所有菜单信息(print)的方法接口。类Menu表示饭店提供的每种餐饮形式的菜单,如煎饼屋菜单、咖啡屋菜单等。每种菜单中都可以添加子菜单,例如图5-1中的甜点菜单。类MenuItem表示菜单中的菜式。

[C++代码]

#include<iostream>

#include<list>

#include<string>

using namespace std;

clas s MenuComponent

protected: string name;

public:

MenuComponent(string name) this->name=name;

String getName()return name;

(1) : //添加新菜单

virtual void print()=0; //打印菜单信息

;

clasS MenuItem: public MenuComponent

private: double price;

public:

Menultem(string name, double price): MenuComponent(name)this->price=price;

double getPrice()return price;

void add(MenuComponent* menuComponent) return; //添加新菜单

void print() cout<<" "<<getName()<<", "<<getPrice()<<end1;

;

clasS Menu: public MenuComponent

private: list< (2) > menuComponents;

pubiic:

Menu(string name): MenuC0mponent(name)

void add(MenuComponent* menuComponent) //添加新菜单

(3) ;

void print()

cout<<"\n"<<getName()<<"\n-------------------------"<<end1;

std::list<MenuC0mponent*>::iterator iter;

for(iter=menuComponents.begin(); iter!=menuComponents. end(); iter++)

(4) ->print();

;

void main()

MenuComponent* allMenus=new Menu("ALL MENUS");

MenuComponent* dinerMenu=new Menu("DINER MENU");

…//创建更多的Menu对象,此处代码省略

allMenus->add(dinerMenu); //将dinerMenu添加到餐厅菜单中

…//为餐厅增加更多的菜单,此处代码省略

(5) ->print(); //打印饭店所有菜单的信息

文中(2)处应为()。