当前位置:文档之家› Java作业集合

Java作业集合

Java课后作业

姓名:周杰学号:3100717102 班级:计算机2010-1

★1-1★百鸡百钱问题

【程序要求】

【程序清单】

package javaapplication1;

public class Main {

public Main() {

}

public static void main(String[] args) {

int g,m,x;

for(g=1;g<100;g++)

{

for(m=1;m<100;m++)

{

for(x=1;x<100;x++)

{

if(g+m+x==100&&3*g+5*m+x/3==100&&x%3==0)

System.out.println("公鸡:"+g+" 母鸡:"+m+"小鸡:"+x);

}

}

}

}

}

★1-2★输出101-205的所有素数

【程序要求】

【程序清单】

package javaapplication1;

public class Main {

public static void main(String[] args) {

for(int i=101;i<206;i++)

{

int xx=1;

for(int n=2;n

{

if (i%n==0)

{

xx=0;break;

}

}

if(xx!=0)

{System.out.println(i);}

}

}

}

1-3Do-while日期计算

【程序要求】

【程序清单】

package javaapplication1;

public class Main {

public Main() {

}

public static void main(String[] args) {

int year=2003,month=12,day=12;

int[]MonthDay={0,31,28,31,30,31,30,31,31,30,31,30,31};

int total=0;

int i=1;

do{

total+=MonthDay[i];i++;

}while(i

if((year%4==0&&year%100!=0)||(year%400==0))

total++;

total+=day;

System.out.println("Total="+total);

}

}

1-4输出三角形星号

【程序要求】

编程输出如图所示的图形:

*

* *

* * *

【程序清单】

public class OutputAsterisk {

public static void main(String[] args) {

for(int hang=1;hang<5;hang++)

{

for(int bl=1;bl<=4-hang;bl++)

{

System.out.print(" ") ;

}

for(int xh=1;xh<=hang;xh++)

{

System.out.print("*"+" ");

}

System.out.println();

}

}

}

1-5使用switch语句输出相应成绩级别

【程序要求】

使用switch语句输出相应成绩级别

A 085-100

B 070-084

C 060-069

D <60

【程序清单】

package main;

import java.util.Scanner;

public class Main {

public static void main(String[]args){

Scanner s=new Scanner(System.in);

System.out.println("Please Input Y our Grade Level:");

String str=s.nextLine();

char c=str.charAt(0);

switch(c){

case 'A':System.out.println("085-100");break;

case 'B':System.out.println("070-084");break;

case 'C':System.out.println("060-069");break;

case 'D':System.out.println("<60");break;

default:System.out.println("您的输入有误!");

}

}

}

1-6输出三角形星号2

【程序要求】

编程输出如图所示的图形:

*

***

*******

*********

【程序清单】

public class OutputAsterisk {

public static void main(String[] args) {

for(int hang=1;hang<5;hang++)

{

for(int bl=1;bl<=4-hang;bl++)

{System.out.print(" ") ;}

for(int xh=1;xh<=hang;xh++)

{System.out.print("*"+" ");}

System.out.println();

}

}

}

3-1swap()交换A类的两个对象的成员变量的值

【程序要求】

已知如下一个类:

class {int a1,a2;

A(int i,int j)

{a1=i;a2=j;}}

要求编一个方法swap()用来交换A类的两个对象的成员变量的值。

【程序清单】

class A{

int a1,a2;

public A(int i,int j){

a1=i;a2=j;

}

public void swap(){

a1=a1+a2;a2=a1-a2;a1=a1-a2;

}

public String toString(){

return a1+" "+a2;}}

public class SwapClass{

public static void main(String srgs[]){

A a=new A(4,5);

System.out.println(a.toString());

a.swap();

System.out.println(a.toString());

}

}

3-2计算圆面积的方法area()

【程序要求】

已知一个类如下所示:

class S{

double r;

}

编写S类的一个子类,改子类中包含一个计算圆面积的方法area()和一个使用super()初始化S类成员的构造

【程序清单】

class S{double r;}

public class Circle extends S{

private final double PI=3.14;

public Circle(double r){

super();

super.r=r;

}

public void area(){

System.out.println(r*r*PI);

}

public static void main(String[] args) {

Circle c=new Circle(2.5);

c.area();

}

}

3-3 编写抽象类

【程序要求】

按照如下要求编程:

(1)编写一个抽象类,至少有一个常量和一个抽象方法。(2)编写两个抽象类的子类,重写定义抽象类中的抽象方法。(3)编写一个主类连起上述三个类,进行某种计算。

【程序清单】

public class Test {

public static void main( String [] args ){

A b,c;

b = new B();

System.out.println( b.getName() );

c = new C();

System.out.println( c.getName() );

}

}

abstract class A{

public String name = "A";

public String getName()

{return name;}

}

class B extends A{

public String getName()

{name = "B";

return name;}

}

class C extends A{

public String getName()

{name = "C";

return name;}

}

3-4 验证复数加减是正确的

定义一个复数类complex,内有两个成员变量:实部和虚部,还有两个方法:求两个复数和以及求两个复数差。编程验证改程序的复数加减运算是正确的。

【程序清单】

import java.util.Scanner;

public class Complex {

private int realPart;

private int imagPart;

public int getRealPart() {

return realPart;

}

public void setRealPart(int realPart) {

this.realPart = realPart;

}

public int getImagPart() {

return imagPart;

}

public void setImagPart(int imagPart) {

this.imagPart = imagPart;

}

public Complex plus(Complex c){

int real=this.realPart+c.realPart;

int imag=this.imagPart+c.imagPart;

Complex result=new Complex();

result.setRealPart(real);

result.setImagPart(imag);

return result;

}

public Complex minus(Complex c){

int real=this.realPart-c.realPart;

int imag=this.imagPart-c.imagPart;

Complex result=new Complex();

result.setRealPart(real);

result.setImagPart(imag);

return result;

}

public String format(){

if(this.imagPart<0){return this.realPart+(this.imagPart+"i");

}else{return this.realPart+"+"+this.imagPart+"i"; }

}

public static void main(String[] args) {

System.out.println("请输入第一个复数(格式:a+bi):");

Scanner in=new Scanner(System.in);String complex1=in.nextLine();

System.out.println("请输入第二个复数(格式:a+bi):");

String complex2=in.nextLine();Complex c1=new Complex();

Complex c2=new Complex();String[] c1Arr=complex1.split("\\+");

int real1=Integer.parseInt(c1Arr[0]);

int imag1=Integer.parseInt(c1Arr[1].substring(0, 1));

c1.setRealPart(real1);c1.setImagPart(imag1);

int real2=Integer.parseInt(c2Arr[0]);

int imag2=Integer.parseInt(c2Arr[1].substring(0, 1));

c2.setRealPart(real2);c2.setImagPart(imag2);

System.out.println("第一个复数+第二个复数:"+c1.plus(c2).format()); System.out.println("第一个复数-第二个复数:"+c1.minus(c2).format());

}

}

4-1 使用不同颜色绘制以下图形

【程序要求】

编写Applet程序,在指定大小的屏幕界面上使用不同颜色绘制如下图形:(1)直径为100像素点的圆。

(2)两个半轴长分别为50像素点和100像素点的椭圆

(3)长和宽都为150像素点的矩形

(4)使用红色填充(3)中的矩形

(5)大小自定的填充圆弧

【程序清单】

import java.applet.Applet;

import java.awt.*;

public class SheJi5 extends Applet{

Color color[] =

{

Color.yellow,Color.blue,Color.pink,Color.red,Color.green };

public void paint(Graphics g)

{ int x = 100;

g.setColor(color[0]); g.drawOval(40,20,100,100);

g.setColor(color[1]); g.drawOval(150,30,100,50);

g.setColor(color[2]);

g.drawRect(10,120,150,150); g.setColor(color[3]);

g.fillRect(10,120,150,150); g.setColor(color[4]);

g.fillArc(150,120,100,100,0,180);

}

}

4-2用三种字体写“I LOVE BEIJING”

【程序要求】

编写Applet程序,选择三种不同字体写出字符串“I LOVE BEIJING”【程序清单】

import java.applet.Applet;

import java.awt.Font;

import java.awt.Graphics;

public class BeColor extends Applet{

public void paint(Graphics g){

g.setFont(new Font("黑体",Font.BOLD,20));

g.drawString("I LOVE BEIJING", 0, 20);

g.setFont(new Font("SansSerif", Font.ITALIC, 20));

g.drawString("I LOVE BEIJING", 0, 50);

g.setFont(new Font("Monotype Corsiva", Font.CENTER_BASELINE, 20));

g.drawString("I LOVE BEIJING", 0, 80);

}

4-3在椭圆内填写一个字符串

【程序要求】

编写Applet程序,在一个椭圆内填写一个字符串,大小,位置以及字符串内容和字体自定。【程序清单】

package pro4_3;

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.blue);

g.drawOval(x0,y0,W,H);

g.setColor(Color.red);

g.setFont(new Font("Helvetica",Font.BOLD,45));

g.drawString("桂林理工~",50,100);

}

}

5-1按钮和文本框

【程序要求】

使用Java Applet编写满足下列要求的程序

(1)含有两个按钮和两个标签

(2)含有文本框和文本区

(3)含有一个按钮具有退出功能

【程序清单】

import java.applet.*;

import java.awt.*;

import java.awt.event.*;

public class SmallApplet extends Applet implements ActionListener

{

Label lb1,lb2;

Button btn1,btn2;

TextField tf1;

TextArea ta1;

public void init()

{

lb1=new Label("请在文本框中输入内容!");

lb2=new Label("文本区显示的内容为:");

btn1=new Button("提交");

btn2=new Button("退出");

tf1=new TextField(20);

ta1=new TextArea();

add(lb1);

add(tf1);

add(lb2);

add(ta1);

add(btn1);

setLayout(new FlowLayout());

setSize(600,400);

setVisible(true);

btn1.addActionListener(this);

btn2.addActionListener(this);

}

public void actionPerformed(ActionEvent e)

{

if(e.getSource()==btn1)

{ta1.setText(tf1.getText());

}

if(e.getSource()==btn2)

{System.exit(0);

}

}

}

5-2布局和计算器

【程序要求】

使用Java Application编写满足下列要求的程序:

(1)使用GridLayout布局

(2)设计一个简单的计算器。包括数字按钮0-9,以及加、减、乘、除、清零、等于运算按钮和一个显示计算结果的文本区。

【程序清单】

import java.applet.*;

import java.awt.*;

import java.awt.event.*;

public class JiSuan extends Applet implements ActionListener

{

Button []buts;

String names[] = {"0","1","2","3","4","5","6","7","8","9","+","-","*","/","=","置零"};

TextArea text;

public void init()

{text = new TextArea(" ",20,2);

add(text);

setLayout(new GridLayout(9,4,5,5));

buts = new Button[names.length];

for(int i = 0;i < names.length;i++)

{

buts[i] = new Button(names[i]);

buts[i].addActionListener(this);

add(buts[i]);

}

}

static int y = 0; static float j = 0;static int z = 0;

public void actionPerformed(ActionEvent e)

{

for(int i = 0;i < 10;i++)

if(e.getSource() == buts[i])

x = (char)(i + '0');

text.append(""+x);

y = y * 10 + i;

}

if(e.getSource() == buts[10])

{

int i = y;y = 0; j = j + i;z = 1;

text.append(" + ");

}

if(e.getSource() == buts[11])

{

int i = y;y = 0;if(j == 0)j = j + i;

else j = j - i;z = 2;text.append(" - ");

}

if(e.getSource() == buts[12])

{int i = y;y = 0;

if(j == 0)j = j + i;

else j = j * i;z = 3;text.append(" * ");

}

if(e.getSource() == buts[13])

{int i = y;y = 0;

if(j == 0) j = j + i;

else j = j / i;z = 4;text.append(" / ");

}

if(e.getSource() == buts[14])

{

if(z == 1)

j = j + y;

else if(z == 2)j = j - y;

else if(z == 3)j = j * y;

else j = j / y;

text.append(" = "+j);

y = 0;

}

if(e.getSource() == buts[15])

{

text.replaceRange(" ",0,50);

y = 0;

j = 0;

} repaint();

}

}

5-3 菜单条和菜单项

【程序要求】

编写一个图形用户界面的Application程序:

(1)有一个菜单条

(2)菜单条中有一个菜单

(3)每个菜单有两个菜单项,其中一个菜单项又具有2个菜单子项。

mportjava.awt.*;

import java.awt.evnt.*;

public class Exam5_19 extends Frame implements ActionListener.Itemlistener {

TextField text;

public Exam5_19()

{

super("周杰的菜单窗口");

setSize(300,200);

}

public void init()

{

MenuBar myB=new MenuBar();

setMenubar(myB);

Menu m1=new Menu("文件");

m1.add(new MenuItem("打开"));

MenuItem m11=new MenuItem("保存");

m11.setEnabled(false);

m1.add(m11);

m1.add("打印");

m1.addSeparator();

m1.add("退出");

ma.addActionListener(this);

myb.add(m1);

Menu m2=new Menu("编辑");

m2.add("复制");

Menu m21=new Menu("颜色");

m21.add("前景色");

m21.add("背景色");

m21.addActionListener(this);

m2,add(m21);

m2.addSeparator();

CheckboxMenuItem mycmi=new CheckbocMNenuItem("全选");

mycmi.addItemListener(this);

m2.add(mycmi);

m2.addActionListener(this);

myB.add(m2);

Menu m3=new Menu("帮助");

m3.add("关于");

m3.adActionListener(this);

myB.sethelpMenu(m3);

text=new TextField();

add("South",text);

}

public static void main(String args[])

Exam5_19 myMenu=new Exam5_19(); myMenu.init();

myMenu,setVisible(true);

}

public void itemStateChanged(ItemEvent e) {

text,setText("状态改变");

}

public void actionPerformed(ActionEvent e) {

text.setText(e.getActionCommand());

if(e.getActionCommand()=="退出") System.exit(0);

}

}

m1.add("退出");

ma.addActionListener(this);

myb.add(m1);

相关主题
文本预览
相关文档 最新文档