试题详情

试题内容

阅读以下说明和Java代码,将应填入  (n)  处的字句写在答题纸的对应栏内。
说明
类Queue表示队列,类中的方法如下表所示。





类Node表示队列中的元素;类EmptyQueueException 给出了队列操作中的异常处理操作。
Java 代码
public class TestMain{                            // 主类
public static void main(String args[]) {
Queue q = new Queue();
q.enqueue("first!");
q.enqueue("second!");
q.enqueue("third!");
(1)  {
while(true)
System.out.println(q. dequeue());
}
catch(   (2)  )  ( }
}
}
public class Queue {                              // 队列
Node m_FirstNode;
public Queue() { m_FirstNode = null; }
public boolean isEmpty() {
if(m_FirstNode == null)  return true;
else  return false;
}
public void enqueue(Object newNode) {// 入队操作
Node next = m_FirstNode;
if(next==null)  m_FirstNode = new Node(newNode);
else {
while(next.getNext() != null)  next = next.getNext();
next.setNext(new Node(newNode));
}
}
public Object dequeue()     (3)   {// 出队操作
Object node;
if (isEmpty())
(4)   ;      // 队列为空,抛出异常
else {
node = m_FirstNode.getObject();
m_FirstNode = m_FirstNode.getNext();
return node;
}
}
}
public class Node {                              // 队列中的元素
Object m_Data;
Node m_Next;
public Node(Object data)          { m_Data = data;   m_Next = null; }
public Node(Object data, Node next)  { m_Data = data;   m_Next = next; }
public void setObject(Object data)   { m_Data = data; }
public Object getObject0          { return m_Data; }
public void setNext(Node next)      { m_Next = next; }
public Node getNext()             { return m_Next; }
}


public class EmptyQueueException extends     (5)   {  // 异常处理类
public EmptyQueueException0  {
System.out.println("队列已空 ! ");
}
}

查看答案

软题库参考答案:暂时没有答案(仅供参考)

软题库解析:正在加载....

你可能感兴趣的试题

5题:阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某公司的组织结构图如图5-1所示,现采用组合(Composition)设计模式来构造该公司的组织结构,得到如图5-2所示的类图。
图5-1  组织结构图
图5-2  类图<2题:

试题二
阅读下列说明,回答问题1至问题4,将解答填入对应栏内。
【说明】
某汽车维修站拟开发一套小型汽车维修管理系统,对车辆的维修情况进行管理。
1.对于新客户及车辆,汽车维修管理系统首先登记客户信息,包括:客户编号、客户名称、客户性质(个人、单位)、折扣率、联系人、联系电话等信息;还要记录客户的车辆信息,包括:车牌号、车型、颜色等信息。一个客户至少有一台车。客户及车辆信息如表2-1所示。

2.记录维修车辆的故障信息。包括:维修类型(普通、加急)、作业分类(大、中、小修)、结算方式(自付、三包、索赔)等信息。维修厂的员工分为:维修员和业务员。车辆维修首先委托给业务员。业务员对车辆进行检查和故障分析后,与客户磋商,确定故障现象,生成维修委托书。如表2-2所示。
1题:

[试题1]
阅读以下说明,根据要求回答下列问题。
[说明]
某电子商务系统采用以数据库为中心的集成方式改进购物车的功能,详细需求如下。
1.加入购物车。顾客浏览商品,点击加入购物车,根据商品标识从商品表中读取商品信息,并更新购物车表。
2.浏览购物车。顾客提交浏览购物车请求后,显示出购物车表中的商品信息。
3.提交订单。顾客点击提交订单请求,后台计算购物车表中商品的总价(包括运费)加入订单表,将购物车表中的商品状态改为待付款,显示订单详情。若商家改变价格,则刷新后可看到更改后的价格。
4.改变价格。商家查看订购自家商品的订单信息,根据特殊优惠条件修改价格,更新订单表中的商品价格。
5.付款。顾客点击付款后,系统先根据顾客表中关联的支付账户,将转账请求(验证码、价格等)提交给支付系统(如信用卡系统)进行转账;然后根据转账结果返回支付状态并更改购物车表中商品的状态。
6.物流跟踪。商家发货后,需按订单标识添加物流标识(物流公司、运单号);然后可根据顾客或商家的标识以及订单标识,查询订单表中的物
4题:

试题四
阅读下列说明和C代码,回答问题1至问题3,将解答写在对应栏内。
[说明]
对有向图进行拓扑排序的方法是:
①初始时拓扑序列为空;
②任意选择一个入度为0的顶点,将其放入拓扑序列中,同时从图中删除该顶点以及从该顶点出发的弧;
③重复②,直到不存在入度为0的顶点为止(若所有顶点都进入拓扑序列则完成拓扑排序,否则由于有向图中存在回路无法完成拓扑排序)。
函数int* TopSort(LinkedDigraphG.的功能是对有向图G中的顶点进行拓扑排序,返回拓扑序列中的顶点编号序列,若不能完成拓扑排序,则返回空指针。其中,图G中的顶点从1开始依次编号,顶点序列为v1,v2,…,vn,图G采用邻接表表示,其数据类型定义如下:
#define MAXVNUM 50    /*最大顶点数*/
typedef struct ArcNode{    /*表结点类型*/
int adjvex;    /*邻接顶点编号*/
4题:

试题四
阅读以下说明和C程序,将应填入  (n)  处的字句写在答题纸的对应栏内。
【说明】
假设需要将N个任务分配给N个工人同时去完成,每个人都能承担这N个任务,
但费用不同。下面的程序用回溯法计算总费用最小的一种工作分配方案,在该方案中,为每个人分配1个不同的任务。
程序中,N个任务从0开始依次编号,N个工人也从0开始依次编号,主要的变量说明如下:
c[i][j]:将任务i分配给工人j的费用;
task[i]:值为0表示任务i未分配,值为j表示任务i分配给工人j;
worker[k]:值为0表示工人k未分配任务,值为1表示工人k已分配任务;
mincost:最小总费用。


【C程序】
#include<stdio.h>
#define N  8    /*N表示任务数和工人数*/
int c[N][N];
unsigned int mincost=65535; &n
5题:阅读下列说明和C++代码,将应填入  (n)  处的字句写在答题纸的对应栏内。
【说明】
某大型购物中心欲开发一套收银软件,要求其能够支持购物中心在不同时期推出的各种促销活动,如打折、返利(例如,满300返100)等等。现采用策略(Strategy)模式实现该要求,得到如图5-1所示的类图。

图5-1 策略模式类图
【C++代码】
#include
using namespace std;
enum TYPE{NORMAL, CASH_DISCOUNT, CASH_RETURN};
class CashSuper{
public:
(1);
};
class CashNormal : public CashSuper {     //正常