Java语言程序设计(一)计算题

1、观察下面的程序片断,指出其中的父类和子类,以及父类和子类的各个域和方
法。

class SuperClass
{
int data;
voidsetData(intnewData)
{
data=newData~
}
intgetData()
{
return data~
}
}
class SubClass extends SuperClass
{
int suhData;
void setSubData(intnewData)
{
suhData=new Data;
}
intgetData()
{
return subData;
}
}

答:
父类 SuperClass
父类的域 data来源:考试大的美女编辑们
父类的方法 setData(),getData()
子类 SubClass
子类的域 data,subData
子类的方法 setSubData(),setData(),getData()采集者退散

2、

答 :

3、创建下面的 GUI ,颜色列表框为红色、绿色和蓝色(不必为各组件提供功能) 。
答 :参考程序如下:

import javawt.*;
public class Chp9_3_B extends Frame{
Choice ch;
Checkbox bg,fg;
Button btnOK,btnCancel;
Panel p,p1,p2;
public Chp9_3_B(){
p=new Panel();
p.setLayout(new GridLayout(2,1));
p1=new Panel();
p2=new Panel();
p1.setLayout(new FlowLayout());
.........
p2.setLayout(new FlowLayout());
ch=new Choice();
ch.add("红色 ");
ch.add("绿色 ");
ch.add("蓝色 ");
bg=new Checkbox(" 背景 ");
fg=new Checkbox(" 前景 ");
p1.add(bg);
p1.add(fg);
btnOK=new Button(" 确定 ");
btnCancel=new Button(" 取消 ");
p2.add(btnOK);
p2.add(btnCancel);
p.add(p1);
p.add(p2);
add(ch,BorderLayout.NORTH);
add(p,BorderLayout.CENTER);
setSize(400,300);
}
public static void main(String[] args){
new Chp9_3_B().setVisible(true);
}
}

4、创建下面的 GUI ,要求在文本框中输入分数,单击“求和”按钮后在结果文本框中显示总分。

答 :
参考程序如下:

import javawt.*; 
import javawt.event.*;
public class Chp9_3_C extends Frame implements ActionListener{
TextField textField1,textField2,textField3;
Button button1=new Button(" 求和 ");
Panel panel1,panel2;
public Chp9_3_C(){
textField1=new TextField();
textField2=new TextField();
textField3=new TextField();
panel1=new Panel();
panel2=new Panel();
panel1.setLayout(new GridLayout(3,2));
panel2.setLayout(new FlowLayout());
panel1.add(new Label(" 数学 : "));
panel1.add(textField1);
panel1.add(new Label(" 英语 : "));
panel1.add(textField2);
panel1.add(new Label(" 总分 : "));
panel1.add(textField3);
panel2.add(button1);
add(panel1,BorderLayout.CENTER);
add(panel2,BorderLayout.SOUTH);
button1.addActionListener(this);
setSize(300,200);
setVisible(true);
}
public static void main(String[] args){
new Chp9_3_C();
}
public void actionPerformed(ActionEvent e){
int n1,n2,sum;
n1=Integer.parseInt(textField1.getText());
n2=Integer.parseInt(textField2.getText());
sum=n1+n2;
textField3.setText(""+sum);
}
}

5、编写一个将华氏温度转换为摄氏温度的程序。应从键盘输入华氏温度,然后通
过文本显示转换后的摄氏温度。使用下面的公式进行温度转换:
摄氏温度 =5/9Χ(华氏温度 -32)
答 :
参考程序如下:

import javapplet.Applet;
import javawt.*;
import javawt.event.*;
public  class  Chp9_3_E  extends  Applet  implements
MouseListener,MouseMotionListener{
int x1,y1,x2,y2;
public void init(){
addMouseListener(this);
addMouseMotionListener(this);
}
public void paint(Graphics g){
g.drawRect(x1,y1,x2,y2);
int area=Math.abs(x2-x1)*Math.abs(y2-y1);
showStatus("矩形面积 : "+area);
}
//implementation of MouseListener
public void mousePressed(MouseEvent e){
x1=e.getX();
y1=e.getY();
}
public void mouseClicked(MouseEvent e){}
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mouseReleased(MouseEvent e){}
//implementation of MouseMotionEvent
public void mouseDragged(MouseEvent e){
x2=e.getX();
y2=e.getY();
repaint();
}
public void mouseMoved(MouseEvent e){}
}

6、编写程序,创建下面的 GUI( 不必为各组件提供功能 )
答 :

import javawt.*;
public class Chp9_3_A extends Frame{
TextField t=new TextField();
String[] op={"7","8","9","/","4","5","6","*","1","2","3","-","0",".","=","+"};
Button[] btn=new Button[16];
Panel p=new Panel();
public Chp9_3_A(){
setLayout(new BorderLayout());
p.setLayout(new GridLayout(4,4));
for(int i=0;i
btn[i]=new Button(op[i]);
p.add(btn[i]);
}
add(t,BorderLayout.NORTH);
add(p,BorderLayout.CENTER);
setSize(400,300);
}
public static void main(String[] args){
new Chp9_3_A().setVisible(true);
}
}

7、编写一个程序,从键盘输入 10 个整数,并将这些数据排序后在标准输出上输出。
答 :

import java.io.*;
public class Sort{
public static void main(String args[])
{
int a[]=new int[10];

byte b[]=new byte[10];
int t;
String str;
System.out.println(" 请输入 10 个整数: ");
try{
for(int i=0;i<10;i++)
{System.out.print("No. "+(i+1)+": ");
System.in.read(b);
str=new String(b);
str=str.trim();
a[i]=Integer.parseInt(str);
}
}catch(IOException e){
System.out.println(e.toString());
}
catch(NumberFormatException e){
System.out.println(e.toString());
}
for(int i=0;i<9;i++)
for(int j=i+1;j<10;j++)
{
if(a[i]>a[j]){
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
for(int i=0;i<10;i++)
System.out.println(a[i]+"\t");
}
}

8、编写一个程序,从键盘输入一串字符,从屏幕输出并将其存入 a.txt 文件中。采集者退散
答 :

import java.io.*;
public class InFile{
public static void main(String[] args)
{
int ch;
try{
FileOutputStream out=new FileOutputStream("a.txt");
while((ch=System.in.read())!='\r'){
System.out.write(ch);
out.write(ch);
}
out.close();
System.out.write('\n');
}catch(IOException e){
System.out.println(e.toString());
}
System.out.println(" 输出至文件完毕! ");
}
}

9、编写一个程序,从键盘输入一串字符,统计这串字符中英文字母、数字、其他符号的字符数。
答 :

import java.io.*;
public class Count{
public static void main(String[] args)
{
int x=0,y=0,z=0;
.........
int ch;
try{
while((ch=System.in.read())!='\r'){
if(ch>='A'&&ch<='Z'||ch>='a'&&ch<='z')
x++;
else if(ch>='0'&&ch<='9')
y++;
else
z++;
}
}catch(IOException e){
System.out.println(e.toString());
}
System.out.println(" 英文字母: "+x);
System.out.println(" 数字字符: "+y);
System.out.println(" 其它字符: "+z);
}
}

10、17.编写一个程序,在当前目录下创建一个子目录 test,在这个新创建的子目录下创建一个文件,并把这个文件设置成只读。
答 :

import java.io.*;
class CopyFile{
public static void main(String[] args) {
String file1,file2 ;
int ch = 0 ;
try {
file1=args[0];
file2=args[1];
File 无效 Stream fis = new File 无效 Stream(file1);
FileOutputStream fos=new FileOutputStream(file2);
while ((ch=fis.read())!=-1)
fos.write(ch);
fis.close();
fos.close();
}
catch(FileNotFoundException e){
System.out.println(" 源文件 :未找到 !");
}catch(ArrayIndexOutOfBoundsException e){
System.out.println(" 缺少运行参数! ");
System.exit(-1);
}
catch (IOException e){
System.out.println(e.toString());
}
}
}

11、12.根据所给创建自定义异常类的使用格式,编写一个自定义异常的小程序。
答 :

class Excp1 extends Exception
{}
class Excp2 extends Excp1
{}
public class ExceptionExam7
{
public static void main(String [] args) throws Exception
{
try
{
throw new Excp2();
}
catch(Excp2 e)
{
System.out.println("catch1");
throw new Excp1();
}
catch(Excp1 e)
{
System.out.println("catch2");
throw new Exception();
}
catch(Exception e)
{
System.out.println("catch3");
}
finally
{
System.out.println("finally");
}
}
}

说明:自定义异常类,关键是选择继承的超类——必须是 Exception 或者其子类。用异常代表错误,而不要再使用方法返回值

12、6.编写一个程序,以说明 catch(Exception e)如何捕获各种异常
答 :

 public class ExceptionExam
{
public static void main(String [] args)
{
try
{
.........
int i=0;
i=3/i;// 将产生算术异常。
}
catch(ArithmeticException e)// 找到了匹配的异常,执行该 catch 块。
{
System.out.println(" 发生了 ArithmeticException 异常 ");
}
catch(AarryIndexOutOfBoundsException e)// 不是匹配的异常,且不会再捕获
//异常,如果发生数组索引超出范围所产生的异常,将执行该 catch 块。
{
System.out.println(" 发生了 AarryIndexOutOfBoundsException 异常 ");
}
catch(Exception e)
//前两个 catch 块均无法捕获 try 块中发生的异常时,才会执行该 catch 块。
{
System.out.println(" 发生了异常 ");
}
finally
{ System.out.println(" 执行 d Finally"); }
}
}

13、16.利用文件输入输出流编写一个实现文件拷贝的程序, 源文件名和目标文件名通过命令行参数传入

答 :

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class mytxt {
public static void main(String[] args) throws IOException {
baiString infile = args[1].toString(); // 输入文件
String fileout = "result.txt"; // 输出路径
try {
// 输出结果
File f = new File(fileout);
FileOutputStream fout = new FileOutputStream(f);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(fout));
// 输入文件
BufferedReader br = null;
File file = new File(infile);
if (file.exists()) {
FileInputStream fin = new FileInputStream(file);
br = new BufferedReader(new InputStreamReader(fin));
}
String str = br.readLine();
int n = 0;
while (str != null && !str.isEmpty()) {
n++;
str = br.readLine();
bw.write(str + "\n");
}
bw.flush();
bw.close();
br.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

14、1、以下程序的输出结果为 _ Peter is 17 years old! ___。

public class Person {
String  name;
int age;
public Person(String name,  int age) {
this . name = name;
this . age = age;
}
public static void main(String[] args) {
Person c =  new Person( "Peter" , 17);
System. out .println(c. name + " is " + c. age + " years old!" );
}
}

15、以下程序的输出结果为 __课程号 :101 课程名 :ASP 学分:3 ___。

public class Course {
private String  cNumber;
private String  cName;
private int cUnit ;
public Course(String number, String name,  int unit) {
cNumber = number;
cName = name;
cUnit = unit;
}
public void printCourseInfo() {
System. out .println( " 课程号 :" + cNumber + " 课程名 :" + cName + " 学分 :" + cUnit );
}
}
class CourseTest {
public static void main(String[] args) {
Course c;
c = new Course( "101" , "ASP", 3);
c.printCourseInfo();
}
}

16、以下程序的输出结果为 汤姆猫体重: 20.0 斤_。

public class Tom {
private float weight ;
private static String  name ;
public void setWeight( float weight) {
this . weight = weight;
}
private void out() {
System. out .println( name + " 体重: " + weight + " 斤" );
}
public static void main(String[] args) {
Tom. name = "汤姆猫 " ;
Tom cat =  new Tom();
cat.setWeight(20);
cat.out();
}
}

17、下列程序的运行结果是 12345__。

public class MyClass {
int a[] = { 1, 2, 3, 4, 5 };
void out() {
for ( int j = 0; j <  a. length ; j++)
System. out .print( a[j] +  "" );
}
public static void main(String[] args) {
MyClass my =  new MyClass();
my.out();
}
}

18、程序设计题
1、按以下要求编写程序
(1) 创建一个 Rectangle 类,添加 width 和 height 两个成员变量
(2) 在 Rectangle 中添加两种方法分别计算矩形的周长和面积
(3) 编程利用 Rectangle 输出一个矩形的周长和面积
解答:

public class Rectangle {
float width , height ;
public Rectangle( float width,  float height) {
this . width = width;
this . height = height;
}
public float getLength(){
return ( this . width + this . height ) * 2;
}
public float getArea(){
return this . width *  this . height ;
}
public static void main(String [] args) {
Rectangle rect =  new Rectangle(10, 20);
System. out .println( " 周长是: " + rect.getLength());
System. out .println( " 面积是: " + rect.getArea());
}
}

19、按以下要求编写程序
(1) 编写 Animal 接口,接口中声明 run() 方法
(2) 定义 Bird 类和 Fish 类实现 Animal 接口
(3) 编写 Bird 类和 Fish 类的测试程序,并调用其中的 run() 方法
解答:

public interface Animal {
void run();
}
class Bird  implements Animal {
public void run() {
System. out .println( " 鸟儿在飞 ..." );
}
}
class Fish  implements Animal {
public void run() {
System. out .println( " 鱼儿在游 ..." );
}
}
public class TestAnimal {
public static void main(String[] args) {
Bird bird =  new Bird();
bird.run();
Fish fish =  new Fish();
fish.run();
}
}

20、编写一个 Frame框架应用程序,要求如下:
(1) 在窗口设置两个菜单“文件” 、“编辑”
(2) 在“文件”菜单里添加三个菜单项“打开” 、“保存”、“关闭”
(3) 在“编辑”菜单里添加两个菜单项“复制” 、“粘贴”
(4) 点击关闭菜单项时,使程序关闭。
解答:

import
import
import
import
import
import
import
import java.awt.event.WindowAdapter;
import
/*
*  主窗体
*/
public class MyFrame extends Frame {
private static final long serialVersionUID
private Frame frmMain ; //  窗体
MenuBar mb;  //  菜单栏
Menu mnuFile ; // " 文件 " 菜单
Menu mnuEdit ; // " 编辑 " 菜单
MenuItem miOpen; // " 打开 " 菜单项
MenuItem miSave; // " 保存 " 菜单项
MenuItem miClose ; // " 关闭 " 菜单项
MenuItem miCopy; // " 复制 " 菜单项
MenuItem miPaste ; // " 粘贴 " 菜单项
public MyFrame() {
frmMain = new Frame( "主窗体 " );
//  创建菜单栏
mb = new MenuBar();
//  创建菜单
mnuFile = new Menu( " 文件 " );
mnuEdit = new Menu( " 编辑 " );
//  创建菜单项
miOpen = new MenuItem( "打开 " );
miSave = new MenuItem( "保存 " );
miClose = new MenuItem( " 关闭 " );
miCopy = new MenuItem( "复制 " );
miPaste = new MenuItem( " 粘贴 " );
}
public void showFrame() {
frmMain .setSize(800, 600);
frmMain .setLocation(100, 100);
frmMain .setBackground(Color. white );
frmMain .setVisible( true );
frmMain .setLayout( null );
frmMain .addWindowListener( new WindowHandler());  //  注册窗口监听器
//  将菜单栏放入窗体中
frmMain .setMenuBar( mb);
//  将菜单放入菜单栏中
mb.add( mnuFile );
mb.add( mnuEdit );
//  将菜单项放入菜单中
mnuFile .add( miOpen);
mnuFile .add( miSave);
mnuFile .add( miClose );
mnuEdit .add( miCopy);
mnuEdit .add( miPaste );
//  注册动作事件监听器
miClose .setActionCommand( "miClose_Clicked" );
miClose .addActionListener( new MenuHandler());
}
//  定义一个内部类,在这个类中编写窗口关闭事件处理程序。
private class WindowHandler  extends WindowAdapter {
public void windowClosing(WindowEvent e) {
System. exit (0);  //  退出应用程序,状态码 0 表示正常终止,非 0 表示异常终止。
}
}
//  定义一个内部类,在这个类中编写动作事件处理程序。
private class MenuHandler  implements ActionListener {
public void actionPerformed(ActionEvent e) {
if (e.getActionCommand() ==  "miClose_Clicked" ) {
System. exit (0);  //  退出应用程序
}
}
}
}
public class TestMyFrame {
public static void main(String[] args) {
//  启动主窗体
MyFrame guiWindow =  new MyFrame();
guiWindow.showFrame();
}
}

21、程序 Exer

import .*;
public class Exerl_1
{
public static void main (String args[ ])
{
"This is a ");
"strint.")
}
}

该程序的输出结果如下:
This is a string.

22、程序

Import .*;
Public class Exerl_2
{
Public static void mian(String args[ ])
{
Char ch=" ";
"Input a character:");
Try{
ch=(char) e)
{  }
"The character is \'"+ch+"\'");
}
}

该程序的输出结果如下
Input a character: k↙
The character is ‘k’

23、编写一个 Java Application 程序,使该程序运行后输出字符串 "Hello!How are

you." 。
参考程序内容如下

import .*;
public class prol_1
{
public static void main(String args[ ])
{
"Hello!How are you.");
}
}

24、编写一个 Java Application 程序,使该程序输出显示如下结果:
Var1=10,var2=
Ok!
参考程序内容如下:

import .*;
public class prol_2
{
public static void main(String args[ ])
{
int var1=10;
double var2=;
"var1="+var1+",var2="+var2);
"ok!");
}
}

25、编程将一个浮点型数的整数部分和小数分别输出显示。

import .*;
public class pro2_2
{
public static void main(String args[])
{
double d=;
d1=d;
int n=0;
while(true)
{
d--;
if(d<0)
break;
n++
}
"integer="+n+",decimal="+(d1-n));
}
}

运行该程序后,输出结果请读者自己分析

26、
在这里插入图片描述
27、编程求出自然数 101~205 中的所有素数。
程序内容如下

import .*;
public class pro2_4
{
public static void main(String args[])
{
int n=0;
boolean prime=false;
for(int i=101;i<=205;i+=2)
{
prime=true;
for(int j=2;j<i;j++)
if(j%j==0)
{
prime=false;
break;
}
if(prime)
{
" ");
n++;
}
if(n%8==0)

28、百鸡百钱问题。公鸡每只 3 无,母鸡每只 5 无,小鸡 3 只一元,用 100 元买 100
只鸡,公鸡、母鸡、小鸡应各买多少
程序内容如下:

import .*;
public class pro2_6
{
public static void main(String args[])
{
for(int a=1;a<34;a++)
for(int b=1;b<21;b++)
if(3*a+5*b+(100-a-b)/3==100 && (100-a-b)%3==0)
" 公鸡 ="+a+" ,母鸡 ="+b+" ,小鸡 ="+(100-a-b));
}
}

运行该程序后输出结果如下:
公鸡 =4,母鸡 =12,小鸡 =84
公鸡 =11,母鸡 =8,小鸡 =81
公鸡 =18,母鸡 =4,小鸡 =78

29、编程输出如图所示的图形
在这里插入图片描述

import .*;
public class pro2_7
{
public static void main(String args[])
{
for(int i=1;i<i+9;i++)
{
for(int j=1;j<i+9;j++)
if(j<=9-i)
" ")
else
"*");

30、

class A
{
int x,y,z,sum;
A(int i,int j,int k)
{
x=i;
y=j;
z=k;
sum=x+y+z;
}
boolean sameA(A al)
{
if(==x)&==y)&==z))
return true;
else
return false;
}
boolean sameS(A al)
{
if==sum)
return true;
else
return false;
}
}
class Exer3_1
{
public static void main(String args[])
{
A a=new A(2,5,8);
A b=new A(2,5,8);
A c=new A(5,8,2);
}
}

输出结果如下:

true
false
true
true

31、

class B
{
void meth(int i)
{"Int:"+i);}
void meth(double i)
{"Double:"+i);}
}
class Exer3_2
{
public static void main(String args[])
{
int i=8;
double d=;
short s=10;
float f=;
byte b=9;
char c='a';
B ob=newB();
(i);
(d);
(s);
((int)f);
(b);
(c);
}
}

输出结果如下:

Int:8
Double:
Int:10
Int:5
Int:9
Int:97

32、

class C
{
int c;
C(int a)
{
c=0;
for(int i=0;i<=a;i++)
c+=i;
}
C(Cb)
{c=;}
}
class Exer3_3
{
public static void main(String args[])
{
C c1=new C(6);
C c2=new C(new C(4));
"c1:"+;
"c2"+;
}
}

输出结果如下:

c1:21
c2:10

33、

class D
{
static int d=100;
static int meth()
{
int s=d*10;
return(s);
}
D(int i)
{d=i;}
}
class Exer3_4
{
public static void main(String args[])
{
":"+;
D dd=new D(10);
"d:"+;
"dd:"+;
":"+());
":"+());
"d:"+;
=500;
":"+());
}
}

输出结果如下:

:100
d:10
dd:10
:100
:100
d:10
:5000

34、

class E
{
double h,w;
void show()
{"width="+w+",height="+h);}
}
class T extends E
{
double area()
{return w*h;}
}
class Exer3_5
{
public static void main(String args[])
{
T t1=new T();
T t2=new T();
=;
=;
=;
=;
();
"t1:area="+());
();
"t2:area="+());
}
}

输出

Width= , height=
t1:area=
width=,height=
t2:area=

35、

class A
{
A()
{"class A");}
}
class B extends A
{
int b;
B(int i)
(b=i);
}
class C extends B
{
private int c;
C(int i,int j)
{
super(j);
c=i;
}
int return c()
{return c;}
}
class Exer3_6
{
public static void main(String args[])
{
C c=new C(5,18);
"c:"+* c());
}
}

输出结果如下:

class A
c:90

36、

class A
{
void show()
{"class A");}
}
class B extends A
{
void show()
{"class B");}
}
class C extends B
{
void show()
{"class C");}
}
class Exer3_7
{
public static void main(String argsp[])
{
A a=new A();
B b=new B();
C c=new C();
A x=new A();
x=a;
();
x=b;
();
x=c;
();
}
}

输出结果如下:

class A
class B
class C

37、

abstract class Shap
{
private double w,h;
Shap(double i)
{w=h=i;}
Shap(double i,double j)
{w=i,h=j;}
Shap(Shap s)
{
w=;
h=;
}
double getw()
{return w;}
double geth()
{return h;}
abstract double area();
}
class Rest extends Shap
{
Rect(double i)
{super(i);}
Rect(double i,double j)
{super(i,j);}
Rect(Rect r)
{super(r);}
double area()
{return getw()*geth();}
}
class Exer3_8
{
public static void main(String args[])
{
Shap s[]=new Shap[3];
s[0]=new Rect;
s[1]=new Rect,;
s[2]=new Rect(new Rect,);
for(int i=0;i<;i++)
"s["+i+"]area="+s[i].area());
}
}

输出结果如下:

s[0]area=
s[1]area=
s[2]area=

38、( 在子目录 address 下 )

package address;
public class addre
{
private String s1,s2,s3;
public addre(String str1,String str2,String str3)
{
s1=str1;
s2=str2;
s3=str3;
}
public void show()
{
"\t"+s2);
"\t"+s3);
}
}
import address.*;
class Exer3_9
{
public static void main(String args[])
{
addre s[]=new addre[2];
s[0]=new addre("PKU","building 44","room 109");
s[1]=new addre("PKU","building 54","room 209");
for(int i=0;i<;i++)
s[i].show();
}
}

输出结果如下:

s[0]area=
s[1]area=
s[2]area=

39、( 在子目录 address 下 )

package address;
public class addre
{
private String s1,s2,s3;
public addre(String str1,String str2,String str3)
{
s1=str1;
s2=str2;
s3=str3;
}
public void show()
{
"\t"+s2);
"\t"+s3);
}
}
import address.*;
class Exer3_9
{
public static void main(String args[])
{
addre s[]=new addre[2];
s[0]=new addre("PKU","building 44","room 109");
s[1]=new addre("PKU","building 54","room 209");
for(int i=0;i<;i++)
s[i].show();
}
}

输出结果如下:

PKU building 44 room 109
PKU building 54 room 209

40、

interface Series
{
int getVal();
}
class R1 implements Series
{
int val;
R1()
{val=0;}
public int getVal()
{
val++
return val;
}
}
class R2 implements Series
{
int val;
R2()
{val=0;}
public int getVal()
{
val+=2;
return val;
}
}
class Exer3_10
{
public static void main(String args[])
{
R1 r1=new R1();
R2 r2=new R2();
Series s;
for(int i=0;i<3;i++)
{
s=r1;
"r1:"+());
s=r2;
"r2:"+());
}
}
}

输出结果如下:

r1:1
r2:2
r1:2
r2:4
r1:3
r2:6

41、

import .*;
public class Exer4_1 extends Applet
{
String str=" 学习 JAVA小程序 ";
public void paint(Graphics g)
{
(str,100,100);
}
}

请读者自编相应的 HTML文件
运行该程序之前,编写一个 HTML文件,文件名为。程序内容如下:

<HTML>
<BODY>
<APPLET code="" width=300 height=200>
</APPLET>
</BODY>
</HTML>

运行时,先将文件使用 javac 命令编译成文件, 然后,再运行文件, 则输出显示如下信
息:
学习 JAVA小程序

42、

import .*;
public class Exer4_2 extends Applet
{
String str1,str2;
public void init()
{
str1=getParameter("name");
str2=getParameter("birthday");
if(str1==null)str1="";
if(str2==null)str2="";
}
public void paint(Graphics g)
{
(" 姓名是 "+str1+" 出生年月日是 "+str2,100,100);
}
}

文件内容如下:

<HTML>
<BODY>
<APPLET code="" width=500 height=200>
<param name="name" value=" 宋小山 ">
<param name="birthday" value="1966 年 8 月 8 日">
</APPLET>
</BODY>
</HTML>

运行该程序后,输出如下结果。
姓名是宋小山 出生年月日是 1966 年 8 月 8 日

43、

import .*;
public class Exer4_3 extends Applet
{
String str=" 您好! ";
char ch[]={'H','e','l','l','o'};
byte byt[]={97,98,99,100,101,102};
public void paint(Graphics g)
{
(byt,0,5,50,50);
(ch,0,3,50,70);
(str,50,90);
}
}

运行前编写一个相应的 HTML文件,运行输出结果如下:
abcde
Hel
您好

44、

import .*;
public class Exer4_4 extends Applet
{
public void paint(Graphics g)
{
for(int i=0;i<6;i++)
drawGraphics(i,g);
}
public void drawGraphics(int n,Graphics g)
{
(10,10,300,300);
switch(n)
{
case 0:case 3:
;
(50,50,150,150);
break;
case 1:case 4:
;
(40,40,160,160);
break;
case 2:case5:
;
(50,50,200,200);
break;
}
try{
(1500);
}
catch(InterruptedException e)
{(0);}
}
}

运行该程序前编写相应的 HTML文件,运行后在屏幕上显示变化的图形:先显示红色的正方形,再显示蓝色圆,最后显示用绿色填充的方块,并且重复一遍。

45、编写 Applet 程序,在指定大小的屏幕界面上使用不同颜色绘制如下图形:
(1)直径为 100 像素点的圆;
(2)两个半轴长分别为 50 像素点和 100 像素点的椭圆;
(3)长和宽都为 150 像素点的矩形;
(4)使用红色填充( 3)中的矩形;
(5)大小由读者指定的填充圆弧。
编写的 Java 小程序名为,程序内容如下:

import .*;
public class pro4_1 extends Applet
{
public void paint(Graphics g)
{
(10,10,300,300);
;
(40,40,100,100);
;
(160,40,50,100);
;
(50,150,150,150);
;
(50,150,150,150);
;
(220,50,180,125,30,120);
}
}

相应的 HTML文件内容如下:

<HTML>
<BODY>
<APPLET code="" width=500 height=500>
</APPLET>
</BODY>
</HTML>

46、编写 Applet 程序,选择 3 种不同的字体写出字符串“ I Love Beijing !”。
编写的 Applet 小程序文件名为 , 程序内容如下:

import .*;
public class pro4_2 extends Applet
{
Font fnt1=new Font("Serif",,25);
Font fnt2=new Font("Monospaced",,40);
Font fnt3=new Font("Helvetica",,40);
public void paint(Graphics g)
{
String str="I Love Beijing!";
(fnt1);
;
(str,30,40);
(fnt2);
;
(str,30,80);
(fnt3);
;
(str,30,120);
}
}

47、编写 Applet 程序,在一个椭圆内填写一个字符串。椭圆大小和位置以及字符串内容和
字体都由读者自定。
编写的 Applet 小程序的文件名为 , 程序内容如下:

import .*;
public class pro4_3 extends Applet
{
public void paint(Graphics g)
{
int x0=30,y0=35,W=300,H=100;
;
(x0,y0,W,H);
;
(new Font("Helvetica",,45));
(" 北京,您好! ",50,100);
}
}

48、编程题
2-5 使用 Java Applet 编写满足下列要求的程序:
(1)含有两个按钮和两个标签;
(2)含有文本框和文本区;
(3)含有一个按钮具有退出功能;
编写程序如下:

import .*;
import pro5_1 extends WindowAdapter implication ActionListener
{
Frame f;
Label la1,la2;
Button b1,b2;
TextField tf;
int tag=0;
public static void main(String args[])
{
pro5_1 mywin=new pro5_1();
();
}
public void display()
{
f=new Frame(" 我的现实窗口 ");
la1=new Label(" 标签 1");
la2=new Label(" 标签 2");
(la1,"North");
(la2,"West");
b1=new Button(" 现实字符串 ");
b2=new Button(" 退出 ");
(this);
(b1,"South");
(this);
(b2,"East");
tf=new TextField();
(tf,"Center");
(this);
(400,200);
(true);
}
public void actionPerformed(ActionEvent e)
{
String s1=" 这是一个字符串 ";
String s2=" 这是另一个字符串 ";
if().equals(" 退出 "))
(0);
if(tag==0)
{
(s1);
tag=1;
}
else
{
(s2);
tag=0;
}
}
public void windowClosing(WindowEvent e)
{
(0);
}
}

49、
在这里插入图片描述
50、
在这里插入图片描述
在这里插入图片描述
51、
在这里插入图片描述
在这里插入图片描述
52、
在这里插入图片描述
在这里插入图片描述
53、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
54、
在这里插入图片描述

55、
在这里插入图片描述
在这里插入图片描述

56、 26以下 fact 方法的功能是求 n 的阶乘 .

static long fact(int n){
int i; long ;______
for(i=1; ;i++)______
f= ;
return f;______
}

在这里插入图片描述

57、27以下程序读取键盘输入,当按下回车时 . 将输入的内容显示在屏幕上。

import java.io.*;
public class Test27 {
public static void main(string []args){
try{
InputStreamReader dis=new InputStreamReader(System in);
BufferedReader reader= ; ______
String s;
while ((s==Reader. )!=null){_________
System.out.printIn(s);
}
Reader. ;_________
}catch (IOException e){
System.out.printIn(e)
}
}
}

在这里插入图片描述

58、28. 以下 paintComponent 方法利用 Graphics2D 绘制一个左上角坐标是 (10,30) ,边长为
50 的红色正方形。

public void paintComponent(Graphics g){
Graphics2D g2d= ;
g2d setColor(Color.red);
Rectangle2Drec ,new Rectangle2D.Double( );
;
}

在这里插入图片描述
59、
在这里插入图片描述
在这里插入图片描述

60、
在这里插入图片描述
在这里插入图片描述
61、
在这里插入图片描述
在这里插入图片描述

62、
在这里插入图片描述
在这里插入图片描述

63、选择一种上机环境,参照实例,编写一个输出 “hello world !”字样的 Java 程序。
答:选择 SUN 的 IDE,用 UltraEdit-32 编写如下:

//HelloWorld.java
/**
*<p> 这是第一个程序 </p>
*@author 饶林
*@see www.wddx.cn
*/
class HelloWorld{
public static void main(String[] args) {
System.out.println( "Hello World!" );
}
}

64、编写输入正实数 x,求平方不超过 x 的最大正整数 n,并输出。

解析:
/**
*<p> 这是第三个程序 </p>
*@author 饶林
*@see www.wddx.cn
*/
import java.util.*;
public class Praxis 2_7
{
public static void main(String[]args)
{
Scanner consoleScanner = new Scanner( System.in );
System.out.print(" 请输入正实数 X:" );
int x = consoleScanner.nextInt();
int y=(int)(Math.sqrt(x));
System.out.println("n = "+y);
}
}

65、
在这里插入图片描述
答 :
在这里插入图片描述

66、
在这里插入图片描述
答 :
在这里插入图片描述

67、
在这里插入图片描述
答 :
在这里插入图片描述

68、
在这里插入图片描述

答 :
在这里插入图片描述

69、32阅读下列程序,请写出该程序的输出结果。
在这里插入图片描述
答 :
在这里插入图片描述
70、33.阅读下列程序,请写出调用 Test33(4) 的输出结果
在这里插入图片描述
答 :
在这里插入图片描述

71、34.阅读下列程序,请回答下面的问题:
(1) 该程序的功能是什么 ?
(2) 文本框中能显示的最小值和最大值分别是多少 ?

在这里插入图片描述
答 :
在这里插入图片描述

72、35阅读下列程序,请写出该程序的功能。
在这里插入图片描述
答 :
在这里插入图片描述

73、36. 阅读下列程序,请写出该程序的功能。
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述

74、37.编写方法 double sumS(int n) ,已知参数 n,求以下表达式前 n 项的和 S返回。
在这里插入图片描述
注:下一项的分母 =上一项的分子,下一项的分子 =上一项的分子与分母的和。
答 :
在这里插入图片描述

75、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述

76、
在这里插入图片描述
答 :
在这里插入图片描述

77、22. 简述在类的方法的定义之前,分别使用修饰字 final 与 abstract 的作用是什么

答 :
在这里插入图片描述

78、23.请写出将文本区对象 ta 放置于滚动面板 jsp ,并将 jsp 添加到当前框架窗口的内容面板中的 Java 语句。

答 :
在这里插入图片描述

79、24. 已知 Graphics 对象 g,获得 Graphics2D 对象 g2d,然后创建并画出正方形对象 rec ,正方形的左上角坐标是 (40 ,50) ,边长是 70。请写出实现以上要求的代码。

答 :
在这里插入图片描述

80、25. 简述字符流数据与字节流数据的区别。

答 :
在这里插入图片描述

81、26. 简述在编写 Java 网络应用程序时,应用 URLConnection 对象的作用。

答 :
在这里插入图片描述

82、方法 void Fibonacci(int m) 的功能是输出 Fibonacci 数列,直到大于 m为止。
注: Fibonacci 数列的前两个数都是 1,从第三个数开始,数列的每个数是其前面两个数之和。
在这里插入图片描述
答 :
在这里插入图片描述
83、以下定义的类 MyPanel 是一个面板的子类,它熊响应鼠标点击事件,当鼠标在面板的某个位置被点击时,就在该位置显示一个圆,限制最多显示最新的 m个圆,值 m由创建该面板对象时指定。
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
84、以下是实现一组单选按钮数组 rb 选择事件的接口方法,该方法将用户的选择条目存于类变量 anser 中。
在这里插入图片描述
答 :
在这里插入图片描述
85、类 ShareData 提供一个方法 modiData() 供修改共享数据的线程调用,该方法限制时共享数据的修改不能小于 0,在共享数据修改结束后,应通知其它发生等待的线程结束等待。以下是该类的代码。
在这里插入图片描述
答 :
在这里插入图片描述
86、31 . 方 法readFile(String sFile ,JTextArea ta) 的功能是输入文件 sFile 的内容在文本区 ta 中显示,该方法采用缓冲式输入的方法,读出和显示一行内容。当方法正确完成指定的功能时,返回 0;当指定的输入文件不存在时,返回 l ;当读文件发生输入错误时,返回 2。
在这里插入图片描述
答 :
在这里插入图片描述
87、32.阅读下列程序,请写出该程序的输出结果。
在这里插入图片描述
答 :
在这里插入图片描述
88、
在这里插入图片描述
答 :
在这里插入图片描述

89、阅读下列程序,请用示意图画出程序运行时呈现的界面。

在这里插入图片描述
答 :
在这里插入图片描述
90、
在这里插入图片描述
答 :
在这里插入图片描述
91、36.阅读下列程序,请回答以下问题:
(1) 程序运行时,在屏幕上能看到什么 ?
(2) 程序采用什么方法让屏幕呈现动态效果 ?
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
92、请编写方法 int revInt(int a) ,该方法的功能是返回与十进制正整数 a 的数字顺序相反排列的正整数。如已知正整数是 l234 ,方法的返回值是 4321。
在这里插入图片描述
答 :
在这里插入图片描述

93、某程序的界面有一个按钮 b、一个文本区 tA 和一个文本框 tF。程序运行时,在文本区 tA 中输入数列,单击按钮 b,则在文本框 tF 中显示该数列中的最大值。
注:以下是要求你编写的 actionPerformed(ActionEvent e) 方法的部分代码。
在这里插入图片描述
答 :
在这里插入图片描述

94、 编写方法 int[]delete(int[]a) ,方法将数组 a 中除了下标为偶数、回时其值也为偶数的元素外,其余的全都删除,剩余元素形成一个新数组 b 并返回

答 :
在这里插入图片描述

95、
在这里插入图片描述
答 :
在这里插入图片描述
96、
在这里插入图片描述
答 :
在这里插入图片描述
97、
在这里插入图片描述
答 :
在这里插入图片描述
98、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
99、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
100、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
101、在这里插入图片描述
答 :
在这里插入图片描述
102、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述

103、编写方法 int[][]transpose(int[][]a) ,方法将生成并返回一个新数组 b,该数组为 a 的转置数组。

注:数组转置指的是将数组的行、列内容互换。
答 :
在这里插入图片描述
104、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
105、
在这里插入图片描述
答 :
在这里插入图片描述
106、
在这里插入图片描述
答 :
在这里插入图片描述
107、
在这里插入图片描述
答 :
在这里插入图片描述
108、
在这里插入图片描述
答 :
在这里插入图片描述
109、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
110、
在这里插入图片描述
答 :
在这里插入图片描述
111、
在这里插入图片描述
答 :
在这里插入图片描述
112、
在这里插入图片描述
答 :
在这里插入图片描述
在这里插入图片描述
113、
在这里插入图片描述
答 :
在这里插入图片描述
114、33 阅读下列程序,请回答以下问题:
(1) 界面中有哪些组件 ?
(2) 点击每一个按钮分别会显示什么内容 ?
在这里插入图片描述
答 :
在这里插入图片描述
115、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述

116、 35阅读下列程序,请回答以下问题:
(1) 该程序中的类 MyPanel 的成员变量 twoClick 的作用是什么,该成员变量的值是如何改变的 ?
(2) 程序运行时,用户在界面的不同位置,用鼠标点击两次,界面中会出现什么 ?
在这里插入图片描述
在这里插入图片描述
答 :

117、
在这里插入图片描述
答 :
在这里插入图片描述
118、37. 编写方法 int[] delete(int []a ,int d) ,方法将创建一个新数组 b,新数组 b 中只包含原数组中所有值不
等于 d 的元素,并返回该新数组 b。
答 :
在这里插入图片描述
119、38. 以下程序的界面有一个按钮 ave、一个文本区 text 和一个标签 label 。程序运行时,在文本区中输入数字序列,单击 ave 按钮,则在标签 label 中显示这个数字序列中正实数的平均值。
注:这里是给定程序的部分代码,你要编写的是 actionPerformed(ActionEvent e) 方法。
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
120、
在这里插入图片描述
答 :
在这里插入图片描述
121、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
122、
在这里插入图片描述
答 :
在这里插入图片描述
123、
在这里插入图片描述
答 :
在这里插入图片描述
124、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
125、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
126、
在这里插入图片描述
答 :
在这里插入图片描述
127、
在这里插入图片描述
答 :
在这里插入图片描述
在这里插入图片描述

128、32. 阅读下列程序,请写出该程序的输出结果。
在这里插入图片描述
答 :
在这里插入图片描述
129、
在这里插入图片描述
答 :
在这里插入图片描述
130、
在这里插入图片描述
答 :
在这里插入图片描述
131、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
132、
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述

133、
在这里插入图片描述
在这里插入图片描述

答 :
在这里插入图片描述
在这里插入图片描述
134、
在这里插入图片描述
在这里插入图片描述
135、
在这里插入图片描述
136、阅读下列程序,请写出该程序的输出的结果
在这里插入图片描述
在这里插入图片描述
答 :
在这里插入图片描述
137、
在这里插入图片描述
在这里插入图片描述
138、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

139、
在这里插入图片描述
答 :
在这里插入图片描述
140、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
141、
在这里插入图片描述
在这里插入图片描述
142、
在这里插入图片描述
143、
在这里插入图片描述
144、
答 :
145、
在这里插入图片描述
146、
在这里插入图片描述
147、
在这里插入图片描述
在这里插入图片描述
148、
在这里插入图片描述
149、
在这里插入图片描述
150、
在这里插入图片描述
151、
在这里插入图片描述
152、
答 :
153、
在这里插入图片描述
在这里插入图片描述
154、
在这里插入图片描述
在这里插入图片描述
155、
答 :
156、
答 :
在这里插入图片描述
157、
在这里插入图片描述
158、
答 :
159、
1-20 Java程序中出现的输出方法 println() 和 print() 是完全一致的。 (错)
分析程序的输出结果题
1-1 程序 Exerl_1.java

import java.io.*;
public class Exerl_1
{
public static void main (String args[ ])
{
System.out.print("This is a ");
System.out.println("strint.")
}
}

该程序的输出结果如下:
This is a string.

160、
1-2 程序 Exerl_2.java

Import java.io.*;
Public class Exerl_2
{
Public static void mian(String args[ ])
{
Char ch=" ";
System.out.println("Input a character:");
Try{
ch=(char)System.in.read();
}
Catch(IOException e)
{  }
System.out.println("The character is \'"+ch+"\'");
}
}

该程序的输出结果如下
Input a character:k↙

161、
1-4 程序 Exerl_4.java

import java.io.*
public class Exerl_4
{
public static void main(String args[ ])
{
A a=new A;
a.i=8;
a.d=1.25;
a.meth("该程序输出结果如下所示 ");
System.out.println("\ti="+a.i+",d="+a.d);
}
}
class A
{
int i;
double d;
void meth(string str)
{
System.out.println(str);
}
}

该程序输出结果如下所示
i=8,d=1.25

162、
在这里插入图片描述
163、1-2 编写一个 Java Application 程序,使该程序输出显示如下结果:
Var1=10,var2=19.5
Ok!
参考程序内容如下:
答 :

import java.io.*;
public class prol_2
{
public static void main(String args[ ])
{
int var1=10;
double var2=19.5;
System.out.println("var1="+var1+",var2="+var2);
System.out.println("ok!");
}
}

164、
在这里插入图片描述
165、
在这里插入图片描述
166、
2-1 Exer2_1.java 程序

public class Exer2_1
{
public static void main(String args[])
{
int i=3;
char c='p';
float f=3.5f;
double d=32.56;
short s=25;
booleab=true;
string st="new";
System.out.println("i+s="+(i+s));
System.out.println("d+f="=(d+f));
System.out.println("st+\"year\"="+st+"year");
System.out.println("!b||b="+(!b||b));
System.out.println("b?i:d="+(b?i:d));
}
}

输出结果如下:
i+s=28
d+f=36.06
st+“year”=new year
c+2=r
!b||b=true
b?i:d=3.0

167、
Exer2_2.java 程序

public class Exer2_2
{
public static void main(String args[])
{
int suma=0,sumb=0;
for(int a=0,b=0;a<5;a++,b++)
{
suma+=a;
sumb+=b;
}
System.out.println("suma="+suma+",sumb="+sumb)
}
}

输出结果如下:
suma=10,sumb=60

168、Exer2_3.java 程序

public class Exer2_3
{
public static void main(String args[])
{
int i,j;
First_Loop:
for(i=1;i<50;i++)
{
for(j=2;j<i;j++)
if(i%j)==0
continue First_Loop;
System.out.println(i);
}
}
}

输出结果如下:
1
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47

169、Exer2_4.java 程序

public class Exer2_4
{
public static void main(String args[])
{
char ch='B';
switch(ch)
{
case'A':System.out.println("5"):break;
case'B':System.out.println("4"):break;
case'C':System.out.println("3"):break;
default:System.out.println("0");
}
}
}

输出结果如下:
4

170、Exer2_5.java 程序

public class Exer2_5
{
public static void main(String args[])
{
int a=3,b=5;
if(a==3)
if(b==1)
a++;
else
b++;
System.out.println(a+","+b);
int x=1,y=4;
if(x==2)
{
if(y==4)
x++;
}
else
y++;
System.out.println(x+","+y);
}
}

输出结果如下:
3,5
1,5

171、
Exer2_6.java 程序

public class Exer2_6
{
public static void main(String args[])
{
int i;
for(i=1;i<10;i++)
{
if(i>2)
System.out.println("AB");
else
System.out.println("BA");
if(i==5)
break;
}
System.out.println("i="+i);
}
}

输出结果如下:
BA
BA
AB
AB
AB
i=5

172、Exer2_7.java 程序

public class Exer2_7
{
public static void main(String args[])
{
long j1=1,j2=1;
for(int i=5;i>=1;i--)
j1*=i;
for(int i=4;i>=1;i--)
j2*=i;
System.out.println("5!+4!"+(j1+j2));
}
}

输出结果如下:
5!
4!=144

173、Exer2_8.java 程序

public class Exer2_8
{
public static void main(String args[])
{
String s1="";
char ch[]={'4','5','6','7','8'};
double d[];
d=new double[5];
d[0]=1.2f;d[1]=2.3f;d[2]=3.4f;d[3]=4.5f;d[4]=5.6f;
String s2[]={"ab","cd","ef"};
int[]a[]={{1,2,3},{4,5,6},{7,8,9}};
System.out.println("s1="+s1);
for(ing i=0;i<5;i++)
System.out.print(ch[i]+",");
System.out.println();
for(i=0;i<5;i++)
d[0]+=d[i];
System.out.println("d[0]="+d[0]);
System.out.println(s2[0]+";"+s2[1]+";"+s2[2]);
for(i=0;i<3;i++)
{
System.out.println();
for(int j=0;j<3;j++)
System.out.print(a[i][j])+" ";
}
}
}

输出结果如下:
s1=
4,5,6.7.8
d[0]=18.3716
ab;cd;ef
1 2 3
4 5 6
7 8 9

174、Exer2_9.java 程序运行时命令行带有参数。运行格式如下:
C:\Exer2_9 51 100↙
程序 Exer2_9.java 内容如下:

public class Exer2_8
{
public static void main(String args[])
{
int sum=0;
ing i=Integer.parseInt(args[0]);
int n=Integer.parseInt(args[1]);
for(;i<=n;i++)
sum=+=i;
System.out.println("sum="+sum);
}
}

输出结果如下
sum=3775

175、 Exer2_10.java 程序

public class Exer2_8
{
public static void main(String args[])
{
A:
for(int i=0;i<5;i++)
{
for(ing j=0;j<8;j++)
{
System.out.print("*");
System.out.println();
continue A;
}
}
}
}

输出结果如下:
*
*
*
*
*

176、
按下列要求写出 Java语言的语句。
(1) 定义一个 double 型变量 d,并赋初值为 2.5。
该语句如下:
Double d=2.5;
(2) 在屏幕上输出显示( 1)中所定义的变量 d 的值。
该语句如下:
System.out.println(“d=”+d);
(3) 定义一个字符型一维数组 ch 它的大小为 10。
该语句如下:
char ch[]=new char[10];
(4) 定义一个字符串常量 s1,其字符串为 “abc”
String s1=“abc”;
(5) 定义一个 boolean 型变量 b,赋初值为 true。
boolean b=true
(6) 在屏幕上输出显示 26 个大写字母。
实现该功能的程序段如下:
for(char ch=‘a’;ch<=‘z’;ch++)
System.out.print(ch)
System.out.println();
(7) 将代数式 s=a
2 +2ab+b 2
写成一个赋值表达式语句。
该语句如下:
s=aa+2ab+bb
(8) a,b 和 c 是 3 个 int 型变量, 用条件表达式写出 a>b 时,c 值为 a,否则 c 值为 b。
int a,b,c;

if(a>b)
c=a;
else
c=b;
(9) 用 for 循环语句实现下述循环:循环变量 m 为 100,每次 m 循环减 10;当 m
等于 50 时退出循环,循环体为空语句。
for(int m=100;m==50;m-=10)
{ }
(10) 使用带标号名的 break 语句,在双重 for 循环自勉结构中,一次从内层循环跳
出外层循环。
该功能程序段如下:

F:for(ing i= ⋯)
{

for(ing j= ⋯)
{

break F;
}

}

177、 编程求出一个一维 int 型数组的元素最大值、最小值、平均值和所有元素之和。
程序内容如下:

import java.io.*;
public class pro2_1
{
public static void main(String args[])
{
int a[]={23,76,45,21,63,90,46,83};
int max,min,sum;
max=min=a[0];
for(int i=1;i<8;i++)
if(max<a[i])
max=a[i];
for(int i=1;i<8;i++)
if(min>a[i])
min=a[i];
for(int i=1;i<8;i++)
sum+=a[i];
System.out.println("max="+max+",min="+min+",ave="+sum/8+",sum="+su
m);
}
}

运行该程序后,输出结果如下:
Max=90,min=21,ave=53,sum=424

178、
在这里插入图片描述
在这里插入图片描述

179、编程求出自然数 101~205 中的所有素数。
程序内容如下

import java.io.*;
public class pro2_4
{
public static void main(String args[])
{
int n=0;
boolean prime=false;
for(int i=101;i<=205;i+=2)
{
prime=true;
for(int j=2;j<i;j++)
if(j%j==0)
{
prime=false;
break;
}
if(prime)
{
System.out.print(i+" ");
n++;
}
if(n%8==0)
System.out.println();
}
}
}

180、编程将一个浮点型数的整数部分和小数分别输出显示。

import java.io.*;
public class pro2_2
{
public static void main(String args[])
{
double d=23.56dl;
d1=d;
int n=0;
while(true)
{
d--;
if(d<0)
break;
n++
}
System.out.println("integer="+n+",decimal="+(d1-n));
}
}

运行该程序后,输出结果请读者自己分析

181、编程求出自然数 101~205 中的所有素数。
程序内容如下

import java.io.*;
public class pro2_4
{
public static void main(String args[])
{
int n=0;
boolean prime=false;
for(int i=101;i<=205;i+=2)
{
prime=true;
for(int j=2;j<i;j++)
if(j%j==0)
{
prime=false;
break;
}
if(prime)
{
System.out.print(i+" ");
n++;
}
if(n%8==0)
System.out.println();
}
}
}

182、使用 switch 语句根据考试成绩等级输出百分制的分数段。规定如下:
A. 85~100
B. 70~84
C. 60~69
D. <60
假定 85~100 分为 A,70~84 为 B,60~69 分为 C,<60 分为 D。
程序内容如下:

import java.io.*;
public class pro2_5
{
public static void main(String args[])
{
int a=Interger.valueOf(args[0].intValue());
int n=a/5;
if(a<60)
n=11;
switch(n)
{
case 20:case 19:case 18:case 17:
System.out.println("A");break;
case 16:case 15:case 14:
System.out.println("B");break;
case 13:case 12:
System.out.println("C");break;
case 11:
System.out.println("D");
}
}
}

输入的分数是通过命令行参数来实现的。假定命令参数为 73 时,运行该程序输出
结果如下:
B

183、
百鸡百钱问题。公鸡每只 3 无,母鸡每只 5 无,小鸡 3 只一元,用 100 元买 100
只鸡,公鸡、母鸡、小鸡应各买多少?
程序内容如下:

import java.io.*;
public class pro2_6
{
public static void main(String args[])
{
for(int a=1;a<34;a++)
for(int b=1;b<21;b++)
if(3*a+5*b+(100-a-b)/3==100 && (100-a-b)%3==0)
System.out.println(" 公鸡 ="+a+" ,母鸡 ="+b+" ,小鸡 ="+(100-a-b));
}
}

运行该程序后输出结果如下:
公鸡 =4,母鸡 =12,小鸡 =84
公鸡 =11,母鸡 =8,小鸡 =81
公鸡 =18,母鸡 =4,小鸡 =78
184、
在这里插入图片描述

import java.io.*;
public class pro2_7
{
public static void main(String args[])
{
for(int i=1;i<i+9;i++)
{
for(int j=1;j<i+9;j++)
if(j<=9-i)
System.out.print(" ")
else
System.out.print("*");
System.out.println();
}
}
}

185、Exer3_1.java

class A
{
int x,y,z,sum;
A(int i,int j,int k)
{
x=i;
y=j;
z=k;
sum=x+y+z;
}
boolean sameA(A al)
{
if((al.x==x)&(al.y==y)&(al.z==z))
return true;
else
return false;
}
boolean sameS(A al)
{
if(al.sum==sum)
return true;
else
return false;
}
}
class Exer3_1
{
public static void main(String args[])
{
A a=new A(2,5,8);
A b=new A(2,5,8);
A c=new A(5,8,2);
System.out.println(a,sameA(b));
System.out.println(a,sameA(c));
System.out.println(a,sameA(b));
System.out.println(a,sameA(c));
}
}

输出结果如下:
true
false
true
true

186、Exer3_2.java

class B
{
void meth(int i)
{System.out.println("Int:"+i);}
void meth(double i)
{System.out.println("Double:"+i);}
}
class Exer3_2
{
public static void main(String args[])
{
int i=8;
double d=6.8;
short s=10;
float f=5.3f;
byte b=9;
char c='a';
B ob=newB();
ob.meth(i);
ob.meth(d);
ob.meth(s);
ob.meth((int)f);
ob.meth(b);
ob.meth(c);
}
}

输出结果如下:
Int:8
Double: 6.8
Int:10
Int:5
Int:9
Int:97

187、Exer3_3.java

class C
{
int c;
C(int a)
{
c=0;
for(int i=0;i<=a;i++)
c+=i;
}
C(Cb)
{c=b.c;}
}
class Exer3_3
{
public static void main(String args[])
{
C c1=new C(6);
C c2=new C(new C(4));
System.out.println("c1:"+c1.c);
System.out.println("c2"+c2.c);
}
}

输出结果如下:
c1:21
c2:10

188、Exer3_4.java

class D
{
static int d=100;
static int meth()
{
int s=d*10;
return(s);
}
D(int i)
{d=i;}
}
class Exer3_4
{
public static void main(String args[])
{
System.out.println("d.meth:"+D.d);
D dd=new D(10);
System.out.println("d:"+D.d);
System.out.println("dd:"+dd.d);
System.out.println("d.meth:"+D.meth());
System.out.println("d.meth:"+dd.meth());
System.out.println("d:"+D.d);
D.d=500;
System.out.println("d.meth:"+D.meth());
}
}

输出结果如下:
d.meth:100
d:10
dd:10
d.meth:100
d.meth:100
d:10
d.meth:5000

189、Exer3_5.java

class E
{
double h,w;
void show()
{System.out.println("width="+w+",height="+h);}
}
class T extends E
{
double area()
{return w*h;}
}
class Exer3_5
{
public static void main(String args[])
{
T t1=new T();
T t2=new T();
t1.w=8.0;
t1.h=5.0;
t2.w=12.0;
t2.h=16.0;
t1.show();
System.out.println("t1:area="+t1.area());
t2.show();
System.out.println("t2:area="+t2.area());
}
}

输出结果如下:
Width= 8.0 , height=5.0
t1:area=40.0
width=12.0,height=16.0
t2:area=192.0

190、Exer3_6.java

class A
{
A()
{System.out.println("class A");}
}
class B extends A
{
int b;
B(int i)
(b=i);
}
class C extends B
{
private int c;
C(int i,int j)
{
super(j);
c=i;
}
int return c()
{return c;}
}
class Exer3_6
{
public static void main(String args[])
{
C c=new C(5,18);
System.out.println("c:"+c.b*c.return c());
}
}

输出结果如下:
class A
c:90

191、Exer3_7.java

class A
{
void show()
{System.out.println("class A");}
}
class B extends A
{
void show()
{System.out.println("class B");}
}
class C extends B
{
void show()
{System.out.println("class C");}
}
class Exer3_7
{
public static void main(String argsp[])
{
A a=new A();
B b=new B();
C c=new C();
A x=new A();
x=a;
x.show();
x=b;
x.show();
x=c;
x.show();
}
}

输出结果如下:
class A
class B
class C

191、Exer3_8.java

abstract class Shap
{
private double w,h;
Shap(double i)
{w=h=i;}
Shap(double i,double j)
{w=i,h=j;}
Shap(Shap s)
{
w=s.w;
h=s.h;
}
double getw()
{return w;}
double geth()
{return h;}
abstract double area();
}
class Rest extends Shap
{
Rect(double i)
{super(i);}
Rect(double i,double j)
{super(i,j);}
Rect(Rect r)
{super(r);}
double area()
{return getw()*geth();}
}
class Exer3_8
{
public static void main(String args[])
{
Shap s[]=new Shap[3];
s[0]=new Rect(8.0);
s[1]=new Rect(5.0,6.0);
s[2]=new Rect(new Rect(12.0,4.0));
for(int i=0;i<s.length;i++)
System.out.println("s["+i+"]area="+s[i].area());
}
}

输出结果如下:
s[0]area=64.0
s[1]area=30.0
s[2]area=48.0

192、addre.java(在子目录 address下)

package address;
public class addre
{
private String s1,s2,s3;
public addre(String str1,String str2,String str3)
{
s1=str1;
s2=str2;
s3=str3;
}
public void show()
{
System.out.print(s1);
System.out.print("\t"+s2);
System.out.println("\t"+s3);
}
}
Exer3_9.java
import address.*;
class Exer3_9
{
public static void main(String args[])
{
addre s[]=new addre[2];
s[0]=new addre("PKU","building 44","room 109");
s[1]=new addre("PKU","building 54","room 209");
for(int i=0;i<s.length;i++)
s[i].show();
}
}

输出结果如下:
PKU building 44 room 109
PKU building 54 room 209

193、Exer3_10.java

interface Series
{
int getVal();
}
class R1 implements Series
{
int val;
R1()
{val=0;}
public int getVal()
{
val++
return val;
}
}
class R2 implements Series
{
int val;
R2()
{val=0;}
public int getVal()
{
val+=2;
return val;
}
}
class Exer3_10
{
public static void main(String args[])
{
R1 r1=new R1();
R2 r2=new R2();
Series s;
for(int i=0;i<3;i++)
{
s=r1;
System.out.println("r1:"+s.getVal());
s=r2;
System.out.println("r2:"+s.getVal());
}
}
}

输出结果如下:
r1:1
r2:2
r1:2
r2:4
r1:3
r2:6

194、4-1 Exer4_1.java

import java.applet.Applet;
import java.awt.*;
public class Exer4_1 extends Applet
{
String str=" 学习 JAVA 小程序 ";
public void paint(Graphics g)
{
g.drawString(str,100,100);
}
}

请读者自编相应的 HTML 文件
运行该程序之前,编写一个 HTML 文件,文件名为 Exer4_1.html 。程序内容如下:

<HTML>
<BODY>
<APPLET code="Exer4_1.class" width=300 height=200>
</APPLET>
</BODY>
</HTML>

运行时,先将 Exer4_1.java 文件使用 javac 命令编译成 Exer4_1.class 文件,然后,再运
行 Exer4_1.html 文件,则输出显示如下信息:
学习 JAVA 小程序
4-2 Exer4_2.java

import java.applet.Applet;
import java.awt.*;
public class Exer4_2 extends Applet
{
String str1,str2;
public void init()
{
str1=getParameter("name");
str2=getParameter("birthday");
if(str1==null)str1="";
if(str2==null)str2="";
}
public void paint(Graphics g)
{
g.drawString(" 姓名是 "+str1+" 出生年月日是 "+str2,100,100);
}
}

Exer4_2.html 文件内容如下:

<HTML>
<BODY>
<APPLET code="Exer4_2.class" width=500 height=200>
<param name="name" value=" 宋小山 ">
<param name="birthday" value="1966 年 8 月 8 日">
</APPLET>
</BODY>
</HTML>

运行该程序后,输出如下结果。
姓名是宋小山 出生年月日是 1966 年 8 月 8 日
4-3 Exer4_3.java

import java.applet.Applet;
import java.awt.*;
public class Exer4_3 extends Applet
{
String str=" 您好! ";
char ch[]={'H','e','l','l','o'};
byte byt[]={97,98,99,100,101,102};
public void paint(Graphics g)
{
g.drawBytes(byt,0,5,50,50);
g.drawChars(ch,0,3,50,70);
g.drawString(str,50,90);
}
}

运行前编写一个相应的 HTML 文件,运行输出结果如下:
abcde
Hel
您好!
4-4 Exer4_4.java

import java.applet.Applet;
import java.awt.*;
public class Exer4_4 extends Applet
{
public void paint(Graphics g)
{
for(int i=0;i<6;i++)
drawGraphics(i,g);
}
public void drawGraphics(int n,Graphics g)
{
g.clearRect(10,10,300,300);
switch(n)
{
case 0:case 3:
g.setColor(Color.red);
g.drawRect(50,50,150,150);
break;
case 1:case 4:
g.setColor(Color.blue);
g.drawOval(40,40,160,160);
break;
case 2:case5:
g.setColor(Color.green);
g.fillRect(50,50,200,200);
break;
}
try{
Thread.sleep(1500);
}
catch(InterruptedException e)
{System.exit(0);}
}
}

运行该程序前编写相应的 HTML 文件,运行后在屏幕上显示变化的图形:先显示红色的正
方形,再显示蓝色圆,最后显示用绿色填充的方块,并且重复一遍。

195、编程题

4-1 编写 Applet 程序,在指定大小的屏幕界面上使用不同颜色绘制如下图形:
(1)直径为 100 像素点的圆;
(2)两个半轴长分别为 50 像素点和 100 像素点的椭圆;
(3)长和宽都为 150 像素点的矩形;
(4)使用红色填充( 3)中的矩形;
(5)大小由读者指定的填充圆弧。
编写的 Java小程序名为 pro4_1.java,程序内容如下:

import java.applet.Applet;
import java.awt.*;
public class pro4_1 extends Applet
{
public void paint(Graphics g)
{
g.clearRect(10,10,300,300);
g.setColor(Color.blue);
g.drawOval(40,40,100,100);
g.setColor(Color.red);
g.drawOval(160,40,50,100);
g.setColor(Color.red);
g.clearRect(50,150,150,150);
g.setColor(Color.green);
g.fillRect(50,150,150,150);
g.setColor(Color.yellow);
g.fillArc(220,50,180,125,30,120);
}
}

相应的 HTML 文件内容如下:

<HTML>
<BODY>
<APPLET code="pro4_1.class" width=500 height=500>
</APPLET>
</BODY>
</HTML>

4-2 编写 Applet 程序,选择 3 种不同的字体写出字符串 “ I Love Beijing!”。
编写的 Applet 小程序文件名为 pro4_2.java,程序内容如下:

import java.applet.Applet;
import java.awt.*;
public class pro4_2 extends Applet
{
Font fnt1=new Font("Serif",Font.ITALIC,25);
Font fnt2=new Font("Monospaced",Font.BOLD,40);
Font fnt3=new Font("Helvetica",Font.BOLD,40);
public void paint(Graphics g)
{
String str="I Love Beijing!";
g.setFont(fnt1);
g.setColor(Color.green);
g.drawString(str,30,40);
g.setFont(fnt2);
g.setColor(Color.yellow);
g.drawString(str,30,80);
g.setFont(fnt3);
g.setColor(Color.red);
g.drawString(str,30,120);
}
}

相应的 HTML 文件读者自编。
4-3 编写 Applet 程序,在一个椭圆内填写一个字符串。椭圆大小和位置以及字符串内容和
字体都由读者自定。
编写的 Applet 小程序的文件名为 pro4_3.java,程序内容如下:

import java.applet.Applet;
import java.awt.*;
public class pro4_3 extends Applet
{
public void paint(Graphics g)
{
int x0=30,y0=35,W=300,H=100;
g.setColor(Color.green);
g.drawOval(x0,y0,W,H);
g.setColor(Color.red);
g.setFont(new Font("Helvetica",Font.BOLD,45));
g.drawString(" 北京,您好! ",50,100);
}
}

相应的 HTML 文件由读者自编。

196、Exer5_1.java

import java.applet.*;
import java.awt.*;
public class Exer5_1 extends Applet
{
private Label lab1,lab2;
public void init()
{
lab1=new Label();
lab1.setText("标签文本左对齐 ");
lab1.setAlignment(Label.LEFT);
lab2=new Label(" 标签文本右对齐 ",Label.RIGHT);
setLayout(new GridLayout(3,3));
add(lab1);add(lab2);
}
}

运行改程序后,输出结果如图 5-5 所示
在这里插入图片描述

197、Exer5_2.java

import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Exer5_2 extends Applet implements ActionListener,ItemListener
{
List colList;
String colName[]={" 黑色 "," 蓝色 "," 浅蓝色 ","绿色 ","红色 "," 黄色 "};
Color cols[]={Color.black,Color.blue,Color.cyan,Color.green,Color.red,Color.yellow};
int t;
public void init()
{
colList=new List(4,false);
colList.addActionListener(this);
colList.addItemListener(this);
for(int i=0;i<colName.length;i++)
colList.add(colName[i]);
add(colList);
}
public void actionPerformed(ActionEvent e)
{}
public void itemStateChanged(ItemEvent e)
{
showStatus(colList.getSelectedItem()+";index"+colList.getSelectedIndex());
t=colList.getSelectedIndex();
repaint();
}
public void paint(Graphics g)
{
g.setColor(cols[t]);
g.fillRect(15,30,20,20);
}
}

运行改程序后,输出结果如图 5-6 所示。
在这里插入图片描述

198、 Exer5_3.java

import java.awt.*;
import java.awt.event.*;
public class Exer5_3 extends Frame implements ActionListener
{
Frame fr;
Panel deck;
CardLayout c1;
Button but[];
String name[]={" 第一张 "," 下一张 "," 前一张 "," 最末张 "};
public Exer5_3()
{
fr=new Frame(" 卡片窗口 ");
deck=new Panel();
c1=new CardLayout();
deck.setLayout(c1);
Panel c1=new Panel();
Label lab1=new Label(" 卡片 1");
c1.add(lab1);
deck.add(c1,lab1.getText());
Panel c2=new Panel();
Label lab2=new Label(" 卡片 2");
c2.add(lab2);
deck.add(c2,lab2.getText());
Panel c3=new Panel();
Label lab3=new Label(" 卡片 3");
c3.add(lab3);
deck.add(c3,lab3.getText());
Panel c4=new Panel();
Label lab4=new Label(" 卡片 4");
c4.add(lab4);
deck.add(c4,lab4.getText());
Panel contr=new Panel();
contr.setLayout(new GridLayout(2,2));
but=new Button[name.length];
for(int i=0;i<name.length;i++)
{
but[i]=new Button(name[i]);
but[i].addActionListener(this);
contr.add(but[i]);
}
fr.add(contr,BorderLayout.WEST);
fr.add(deck,BorderLayout.EAST);
fr.setSize(300,150);
fr.show();
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==but[0])
c1.first(deck);
if(e.getSource()==but[1])
c1.next(deck);
if(e.getSource()==but[2])
c1.previous(deck);
if(e.getSource()==but[3])
c1.last(deck);
}
public static void main(String args[])
{
Exer5_3 m1=new Exer5_3();
}
}

运行该程序后,输出结果如图 5-7 所示。
在这里插入图片描述

199、Exer5_4.java

import java.awt.*;
public class Exer5_4 extends Frame
{
TextField tf=new TextField("",30);
MenuBar mb1=new MenuBar();
Menu f=new Menu(" 文件 ");
Menu m=new Menu(" 照片 ");
Menu s=new Menu(" 储存 ");
String name[]={" 第一张 "," 下一张 "," 前一张 "," 最末张 "};
CheckboxMenuItem[]save={new CheckboxMenuItem(" 保存 "),new CheckboxMenuItem(" 另
存为 ")};
MenuItem[] file1={new MenuItem(" 打开 "),new MenuItem(" 关闭 ")};
MenuBar mb2=new MenuBar();
Menu fo=new Menu(" 水果 ");
MenuItem[] fruit={new  MenuItem(" 香蕉 "),new MenuItem(" 苹果 "),new MenuItem(" 李子
")};
Button but=new Button("Swap");
public Exer5_4()
{
for(int i=0;i<name.length;i++)
{
m.add(new MenuItem(name[i]));
if((i+1)%3==0)
m.addSeparator();
}
for(int i=0;i<save.length;i++)
s.add(save[i]);
f.add(s);
for(int i=0;i<file1.length;i++)
f.add(file1[i]);
mb1.add(f);
mb1.add(m);
setMenuBar(mb1);
tf.setEditable(false);
add("Center",tf);
add("North",but);
for(int i=0;i<fruit.length;i++)
fo.add(fruit[i]);
mb2.add(fo);
}
public boolean handleEvent(Event e)
{
if(e.id==Event.WINDOW_DESTROY)
System.exit(0);
else
return super.handleEvent(e);
return true;
}
public boolean action(Event e,Object arg)
{
if(e.target.equals(but))
{
MenuBar m=getMenuBar();
if(m==mb1)
setMenuBar(mb2);
else if(m==mb2)
setMenuBar(mb1);
}
else if(e.target instanceof MenuItem)
{
if(arg.equals(" 打开 "))
{
String str=tf.getText();
Boolean ch=false;
for(int i=0;i<name.length;i++)
if(str.equals(name[i]))
ch=true;
if(!ch)
tf.setText("你按了打开菜单 ");
else
tf.setText("打开 "+str);
}
else if(e.target.equals(file1[1]))
System.exit(0);
else if(e.target.equals(save[0]))
tf.setText("你按了保存菜单 ");
else if(e.target.equals(save[1]))
tf.setText("你按了另存为菜单 ");
else
tf.setText(arg.toString());
}
else
return super.action(e,arg);
return true;
}
public static void main(String args[])
{
Exer5_4 ex=new Exer5_4();
ex.setSize(new Dimension(200,200));
ex.setVisible(true);
}

}运行该程序后,输出结果如图 5-8 所示。
在这里插入图片描述

198、Exer5_5.java

import java.awt.*;
import java.awt.event.*;
class myDialogFrame extends Frame implements ActionListener
{
MenuItem aboutItem,exitItem;
aboutDialog myDialog;
public myDialogFrame()
{
setSize(300,200);
setTitle(" 我的联系窗口 ");
addWindowListener(new  WindowAdapter(){public  void  windowClosing(WindowEvent
E){System.exit(0);}});
MenuBar mb=new MenuBar();
setMenuBar(mb);
Menu fm=new Menu(" 练习 ");
mb.add(fm);
aboutItem=new MenuItem(" 关于信息 ");
aboutItem.addActionListener(this);
fm.add(aboutItem);
exitItem=new MenuItem(" 退出 ");
exitItem.addActionListener(this);
fm.add(exitItem);
}
public void actionPerformed(ActionEvent e)
{
Object sou=e.getSource();
if(sou==aboutItem)
{
if(myDialog==null)
myDialog=new aboutDialog(this);
myDialog.show();
}
else if(sou==exitItem)
{System.exit(0);}
}
}
class aboutDialog extends Dialog
{
public aboutDialog(Frame parent)
{
super(parent,"信息框 ",true);
Panel p1=new Panel();
TextArea ta=new TextArea(10,30);
ta.setText("请写下你的信息 ");
p1.add(ta);
add("North",p1);
Panel p2=new Panel();
Button but=new Button(" 返回 ");
p2.add(but);
add("Center",p2);
but.addActionListener(new  ActionListener(){public  void  actionPerformed(ActionEvent
e){setVisible(false);}});
setSize(300,250);
}
}
public class Exer5_5
{
public static void main(String args[])
{
Frame fr=new myDialogFrame();
fr.show();
}
}

运行该程序后,输出结果如图 5-9 所示。
在这里插入图片描述

199、2-18使用 Java Applet 编写满足下列要求的程序:
(1)含有两个按钮和两个标签;
(2)含有文本框和文本区;
(3)含有一个按钮具有退出功能;
编写程序如下:

import java.awt.*;
import java.awt.event.*;
class pro5_1 extends WindowAdapter implication ActionListener
{
Frame f;
Label la1,la2;
Button b1,b2;
TextField tf;
int tag=0;
public static void main(String args[])
{
pro5_1 mywin=new pro5_1();
mywin.display();
}
public void display()
{
f=new Frame(" 我的现实窗口 ");
la1=new Label(" 标签 1");
la2=new Label(" 标签 2");
f.add(la1,"North");
f.add(la2,"West");
b1=new Button(" 现实字符串 ");
b2=new Button(" 退出 ");
b1.addActionListener(this);
f.add(b1,"South");
b2.addActionListener(this);
f.add(b2,"East");
tf=new TextField();
f.add(tf,"Center");
f.addWindowListener(this);
f.setSize(400,200);
f.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
String s1="这是一个字符串 ";
String s2="这是另一个字符串 ";
if(e.getActionCommand().equals(" 退出 "))
System.exit(0);
if(tag==0)
{
tf.setText(s1);
tag=1;
}
else
{
tf.setText(s2);
tag=0;
}
}
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}

运行该程序后,输出结果如图 5-10 所示。
在这里插入图片描述

200、
在这里插入图片描述

201、
在这里插入图片描述

202、阅读下列程序,请回答以下问题:
(1)程序要求在文本框 text 中输入的内容是什么 ? 需要读取的文件 URL 地址
(2)辅助文本区 showArea 组件的作用是什么 ? 显示读取的文件内容
(3)如何使程序开始下载网络文本文件 ? 点击下载按钮
(4)程序采用什么输入方式下载网络文件 ? 使用字节流完成下载
在这里插入图片描述

import java.net.* ; import java.awt.* ;
import java.awt.event.* ; import,java.io.* ; import javax.swing.*public class Class1{
public static void main(String args[])  .
{  new ConnectNet("读取网络文本文件示意程序 ")}
}
class ConnectNet extends JFrame implements ActionListener{
JTextField text=new JTextField(30) ;
JTextArea showArea=new JTextArea();
JButton b=new JButton(" 下载");JPanel p=new JPanel()ConnectNet(String s){
super(s);Container  con=this.getContentPane();
p.add(text);p.add(b);
JScrollPane jsp=new JScrollPane(showArea);
b.addActionListener(this) ;
con.add(p,"North") ; con.add(jsp,"Center")setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)setSize(500400)setVisible(true)}
public void actionPerformed(ActionEvent e){
String urlName=text.getText()try{  URL url=new URL(urlName)//由网址创建 URL 对象
URLConnection tc=url.openConnection()//获得 URLConnection 对象
tc.connect()//设置网络连接
InputStreamReader in=new InputStreamReader(tc.getInputStream());
BufferedReader dis=new BufferedReader(in); String inLine ;
while((inLine=dis.readLine())!=null){showArea.append(inLine+" \n")}
dis.close()}catch(MalformedURLException e2){e2.printStackTrace()}
catch(IOException e3){ e3.printStackTrace()}
}  
}

203、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
204、
在这里插入图片描述
在这里插入图片描述
205、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
206、
在这里插入图片描述
在这里插入图片描述
207、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
208、
在这里插入图片描述
209、
以下程序界面有一个标以 “ OK”的按钮 bt、一个文本区 ta 和一个文本框 tf。当在文本框中输入内容完毕后,点击“ OK”按钮可以使文本框内的字符串添加到文本区中,并输出文字 “因点击按钮而引发添加 ”;或者按回车键使得文本框内的字符串添加到文本区中,并输出文字 “因在文本框里回车而引发添加 ”。
注:这里是给定程序的部分代码,你要编写的是 actionPerformed(ActionEvent e) 方法。

import javax.swing.*;import java.awt.*;import java.awt.event.*;
public class Test38 extends JFrame implements ActionListener
{
JButton bt = new JButton("OK");
JTextField tf = new JTextField(20);
JTextArea ta = new JTextArea(10,20);
public Test38()
{
Container c = getContentPane();
c.setLayout(new FlowLayout());  //指定布局方式为顺序布局
c.add(ta);
c.add(bt);
c.add(tf);
bt.addActionListener(this);
tf.addActionListener(this);
setSize(400,300);
setVisible(true);
}
public void actionPerformed(ActionEvent e)  //请在“答题纸’ ’上编写以下代码
{
if(e.getSource( )== bt)
{
ta.append(tf.getText( )+"( 按钮添加 )\n");
}
if(e.getSource( )== tf )
{
ta.append(tf.getText( )+"( 回车添加 )\n");
}
}
public static void main(String args[])
{
new Test38();
}
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
210、
在这里插入图片描述
在这里插入图片描述
211、
在这里插入图片描述
在这里插入图片描述
212、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
213、
在这里插入图片描述
在这里插入图片描述
214、2、按以下要求编写程序
(1) 编写 Animal 接口,接口中声明 run() 方法
(2) 定义 Bird 类和 Fish 类实现 Animal 接口
(3) 编写 Bird 类和 Fish 类的测试程序,并调用其中的 run()方法
解答:

public interface Animal {
void run();
}
class Bird  implements Animal {
public void run() {
System. out .println(" 鸟儿在飞 ...");
}
}
class Fish  implements Animal {
public void run() {
System. out .println(" 鱼儿在游 ...");
}
}
public class TestAnimal {
public static void main(String[] args) {
Bird bird =  new Bird();
bird.run();
Fish fish =  new Fish();
fish.run();
}
}

在这里插入图片描述
215、1、按以下要求编写程序
(1) 创建一个 Rectangle类,添加 width 和 height 两个成员变量
(2) 在 Rectangle中添加两种方法分别计算矩形的周长和面积
(3) 编程利用 Rectangle输出一个矩形的周长和面积
解答:

public class Rectangle {
float width, height;
public Rectangle( float width,  float height) {
this .width = width;
this .height = height;
}
public float getLength(){
return ( this .width +  this .height) * 2;
}
public float getArea(){
return this .width *  this .height;
}
public static void main(String [] args) {
Rectangle rect =  new Rectangle(10, 20);
System. out .println(" 周长是: " + rect.getLength());
System. out .println(" 面积是: " + rect.getArea());
}
}

在这里插入图片描述
216、
在这里插入图片描述
217、
在这里插入图片描述
218、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
219、
在这里插入图片描述
220、
在这里插入图片描述
221、
在这里插入图片描述
在这里插入图片描述
222、
在这里插入图片描述
223、
在这里插入图片描述
224、
在这里插入图片描述
在这里插入图片描述
225、
在这里插入图片描述
226、
在这里插入图片描述
227、
在这里插入图片描述
228、
在这里插入图片描述
在这里插入图片描述
229、
在这里插入图片描述
230、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
231、
在这里插入图片描述
232、
在这里插入图片描述
在这里插入图片描述
233、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
234、
在这里插入图片描述
在这里插入图片描述
235、
在这里插入图片描述
在这里插入图片描述
236、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
237、
在这里插入图片描述
238、
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
239、
在这里插入图片描述
在这里插入图片描述
240、
在这里插入图片描述
在这里插入图片描述
241、
在这里插入图片描述
在这里插入图片描述
242、
在这里插入图片描述
243、
在这里插入图片描述
244、
在这里插入图片描述
在这里插入图片描述
245、
在这里插入图片描述

  • 2
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寰宇001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值