阅读以下应用说明、图和Java代码,根据要求回答问题1至问题5。【说明】Stack类是java. ntil包中专门用来实现栈的工具类。以下Java程序是一个不使用库函数而实现字符串反转的程序。例如,输入:123456,则输出:654321:输入:asdfeg,则输出:gefdsa。【Java程序】import java.applet.Applet;import java.awt.*;import java.awt.event.*;import java.util.*;public class UseSta

题目

阅读以下应用说明、图和Java代码,根据要求回答问题1至问题5。

【说明】

Stack类是java. ntil包中专门用来实现栈的工具类。以下Java程序是一个不使用库函数而实现字符串反转的程序。例如,输入:123456,则输出:654321:输入:asdfeg,则输出:gefdsa。

【Java程序】

import java.applet.Applet;

import java.awt.*;

import java.awt.event.*;

import java.util.*;

public class UseStack extends Applet implements ActionListener

{ Stack MyStack;

Label prompt=new Label("输入要反转字符:");

Button pushBtn=new Button("压栈");

Button popBtn=new Button("弹栈"); //反转

TextField input=new TextField(5);

int[] DrawStack =new int[10]; //记录堆栈中数据

int[] PoppedOut=new int[20]; //记录被弹出的数据

int StackCnt=0; //记录模拟堆栈的数组中的数据个数

String msg=" ";

public void init()

{ MyStack=new Stack();

add(prompt);

add(input);

add(pushBtn);

add(popBtn);

pushBtn.addActionListener(this);

(1)

}

public void paint(Graphics g)

{ for (int i=10; i<StackCnt; i++) //模拟显示堆栈内部的数据排列情况

{ g.drawRect(50,200-i*20,80,20);

g.drawString(Integer.toString(DrawStack[i]),80,215-i*20);

}

for (int i=0;(2) ) //显示被弹出的数据

g.drawString(Integer.toString(PoppedOut[i]),200+i*20,100);

g.drawString("堆栈",70,236);

g.drawString("栈底",135,225);

g.drawString("栈顶",160,225-StackCnt*20);

g.drawString(msg,200,140);

}

public void actionPerformed( (3) )

{ if (e.getAct ionCommand () == "压栈") //压栈操作

{ if(StackCnt<10)

{ MyStack.push(new Integer( (4) ));

DrawStack[StackCnt++]=Integer.parseInt(input.getText() );

input.setText (" ");

}

else

msg="输入数据过多,请先弹栈!"

}

else if (e.getActionCommand () == "弹栈") //弹栈操作

{ if( (5) )

{ StackCnt--;

PoppedOut[PopCnt++]=[(Integer)(MyStack.pop())).intValue();

}

else

msg="堆栈已空,不能再弹栈!";

}

repaint();

}

}


相似考题
更多“阅读以下应用说明、图和Java代码,根据要求回答问题1至问题5。 【说明】 Stack类是java. ntil包中专门 ”相关问题
  • 第1题:

    阅读以下说明,回答问题1至问题6。

    说明

    ADSL是接入Internet的一种宽带技术。图2-1为一台带网卡的PC机采用ADSL接入Internet的网络结构图。

    将图2-1中(1)和(2)空缺名称填写在应的位置。


    正确答案:(1)ADSL Modem通常被称为ATU-R(ADSL Transmission Unit-Remote) (2)分离器或称滤波器
    (1)ADSL Modem,通常被称为ATU-R(ADSL Transmission Unit-Remote) (2)分离器,或称滤波器 解析:ADSL(Asvmmnetrical Digital Subscriber Line)是一种非对称DSL技术,可在现有任意双绞线上传输,误码率低。ADSL在一对铜线上,支持上行速率512Kb/s~1Mb/s,下行速率1Mb/s~8Mb/s,有效传输距离在3km~5km左右。另外,在进行数据传输的同时还可以使用第三个通信信道,进行4kHz的语音传输。
    远端模块由用户ADSL Modem和滤波器组成,如图2-2所示。用户ADSL Modem通常被称为ATU-R (ADSL Transmission Unit-Remote)。

    故(1)处是ADSL Modem,通常被称为ATU-R (ADSL Transmission Unit-Remote); (2)处是分离器,或称滤波器。

  • 第2题:

    阅读以下说明,回答问题1至问题3。

    【说明】路由器中IP访问控制列表能够帮助控制网上包的传输。

    IP访问控制列表主要用在哪几个方面?


    正确答案:主要用在以下几个方面: (1)控制一个端口的包传输; (2)控制虚拟终端访问数量; (3)限制路由更新的内容。
    主要用在以下几个方面: (1)控制一个端口的包传输; (2)控制虚拟终端访问数量; (3)限制路由更新的内容。

  • 第3题:

    阅读以下C代码,回答问题(1)~(5),将解答填入答题纸的对应栏内。【说明】以下java代码实现一个简单乐器系统,音乐类(Music)可以使用各类乐器(Instrument)进行演奏和调音等操作。对部分乐器进行建模,其类图如题5-1所示,包括:乐器(Instrument)、打击乐器(Percussion)、弦乐器(Stringed)、管乐器(Wind)、木管乐器(Woodwind)、铜管乐器(Brass)




    答案:
    解析:
    1)abstract void play(Note n)(2)extends Instrument (3)extends Wind(4)ArryList< Instrument >(5)Music
    【解析】

    1空定义抽象方法23空用extends继承对应的类4用数组创建Instrument的个各类5创建Music对象

  • 第4题:

    阅读下列说明、图和Java代码,回答问题1至问题3。

    【说明】

    已知四个类之间的关系如图2-4所示,分别对每个类的方法进行编号,例如Shape的perimeter()为1号,表示为1:perimeter(),Rectangle类的perimeter()为2号,表示为 2:perimeter(),依此类推,其中,每个类的perimeter方法签名相同。

    【Java代码】

    Triangle tr=new Triangle();

    Square sq=new Square();

    Shape sh=tr;

    关于上述Java代码中sh和tr的以下叙述中,哪两个是正确的(写出编号)。

    ①sh和tr分别引用同一个对象;

    ②sh和tr分别引用同一类型的不同的对象:

    ③sh和tr分别引用不同类型的不同对象:

    ④sh和tr分别引用同一个对象的不同拷贝;

    ⑤sh和tr所引用的内存空间是相同的。


    正确答案:① ⑤
    ① ⑤

  • 第5题:

    阅读以下关于软件测试的说明,回答司题l至问题3,将解答填入答题纸的对应

    栏内。

    【说明】

    使用在汽车、飞机中的嵌入式软件, 日于直接影响人的生命及财产安全,测试要求

    更为严格。语句覆盖、判定覆盖、条件覆盖和MC/DC覆盖是通常对这类软件的要求。

    以下是一段C语言代码,请仔细阅读并回答相关问题:

    【问题1】(6分)

    请根据测试要求,简要说明语句覆盖、判定覆盖、条件覆盖和MC/DC覆盖的含义。

    将答案填写在答题纸的对应栏中。

    【问题2】(5分)

    画出以上代码的流程图,将答案填写在答题纸的对应栏中。

    【问题3】(4分)

    请根据【说明】中的C语言代码,计算满足MC/DC覆盖要求的用例数量及条件取

    值范围,将答案填写在答题纸的对应栏中.


    正确答案:
    试题三分析
    本题考查嵌入式软件测试的基本知识.
    语句覆盖要求设计足够多的测试用例,运行被测程序,使得程序中每条语句至少被
    执行一次。定覆盖(分支覆盖)要求设计足够多的测试用例,运行被测程序,使得程序
    中的每个判断的“真”和“假”都至少被执行一次。条件覆盖要求设计足够多的测试用
    例,运行被测程序,使得判定中的每个条件获得各种可能的结果,即每个条件至少有一
    次为真值,有一次为假值。MC/DC覆盖要求每个条件的取值都有覆盖,每个判定值都有
    覆盖且每个条件都能独立影响判定结果,各覆盖率的含义如表2.5所示。

    【问题2]
    本问题考查程序流程图的画法。注意开始、结束的符号。
    根据源代码,程序流程图如下。

    【问题3]
    本问题考查MC/DC覆盖率判定的综合运用。
    MC/DC与代码中的逻辑运算有关。本题代码中的逻辑运算为x>0&&y>0。根据
    MC/DC的定义,MC/DC覆盖要求每个条件的取值都有覆盖,每个判定值都有覆盖且每
    个条件都能独立影响判定结果。对于a&&b这样的逻辑运算,真值表如下。

    对测试用例1和测试用例2,条件a不变,因为条件b的不同而导致结果的不同,
    因此条件b独立影响判定的结果。对测试用例2和测试用例3,因为条件b不变,条件a
    的不同而导致结果的不同,因此条件a独立影响判定的结果。综合以上,对逻辑运算a&&
    b应产生三个测试用例,包括:(True,False)、(True,True)、(False,True)。
    所以本题用例数量:3个;条件取值范围:(x>0andy<=0)、(x<=0andy>0)及(x>0
    andy>0)。
    参考答案

    【问题2]
    【问题3]
    用例数量:3个;
    条件取值范围:
    (x>0andy<=0)、(x<=0andy>0)及(x>0andy>0)

  • 第6题:

    阅读以下说明,回答问题1至问题2,将解答填入答题纸对应的解答栏内。
    【说明】
    某留言系统采用ASP+Access开发,其后台管理登录页面如图4-1所示。

    【问题1】(9分)
    以下是该后台管理登录页面login.asp的部分代码,请仔细阅读该段代码,根据图4-1 将(1)~(9)的空缺代码补齐。



    【问题2】(6分)
    1.在登录页面 login.asp 中通过<!--#include file=“bbb.asp”-->导入了bbb.asp的代码,以下是bbb.asp的部分代码,请仔细阅读该段代码,将空缺代码补齐。



    答案:
    解析: