问题 问答题

【说明】
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();

答案

参考答案:(1)popBtn.addActionListener(this);
(2)i<PopCnt;i++或其等价语句
(3)ActionEvente
(4)input.getText()
(5)!MyStack.empty()或其等价语句

解析:[要点解析]
这是一道要求读者掌握Java中Stack类工具应用的程序设计题。本题的解答思路如下。
堆栈简称为栈,遵循“后进先出(LIFO)”原则。Stack是Java用来实现栈的工具类,它的主要方法如表2-16所示。本试题的Java程序是使用Stack类实现堆栈中弹栈和压栈的操作。
表2-16 Stack类的主要方法

方 法
论述题

(19分)

注:2008年,民族地区GDP已达到30626亿元,按可比价格计算比1978年增长了17.4倍,比1952年增长了92.5倍。

材料二:过去,人们一提到民族地区脑海里浮现的就是“刀耕火种”、“手无寸铁”、“羊肠小道”、“人背马驮”……但是,仅用了半个多世纪的时间,民族地区就彻底改变了一穷二白的面貌。2008年,民族地区城镇居民人均可支配收入由1978年的307元增加到13170元,农牧民人均纯收入由1978年的138元增加到3389元。60年来,民族地区农村贫困人口减少了近4000万,部分少数民族已实现整体脱贫。

材料三:民族因素和区域因素相结合,政治因素和经济因素相结合,历史因素和现实因素相结合……中 * * 党人和中国人民以高度的政治智慧和伟大的开拓精神,将马克思主义民族理论与中国具体实际相结合,开创了具有鲜明中国特色的中国民族问题的解决之路——民族区域自治。60年来,在民族区域自治制度指引下,我国各少数民族和民族地区艰苦奋斗、矢志有为,实现了经济社会各方面的巨大发展和深刻变革,以坚定的足迹,走向充满希望的明天……

(1)材料一、二说明了什么?(4分)

(2)根据材料,结合《政治生活》知识,你认为民族地区为什么能实现经济社会各方面的巨大发展和深刻变革?(9分)

(3)材料三体现了哪些哲学道理?(6分)