文天学院JAVA课程实践设计题 张亦辰.docx

上传人:b****8 文档编号:9372666 上传时间:2023-02-04 格式:DOCX 页数:21 大小:18.61KB
下载 相关 举报
文天学院JAVA课程实践设计题 张亦辰.docx_第1页
第1页 / 共21页
文天学院JAVA课程实践设计题 张亦辰.docx_第2页
第2页 / 共21页
文天学院JAVA课程实践设计题 张亦辰.docx_第3页
第3页 / 共21页
文天学院JAVA课程实践设计题 张亦辰.docx_第4页
第4页 / 共21页
文天学院JAVA课程实践设计题 张亦辰.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

文天学院JAVA课程实践设计题 张亦辰.docx

《文天学院JAVA课程实践设计题 张亦辰.docx》由会员分享,可在线阅读,更多相关《文天学院JAVA课程实践设计题 张亦辰.docx(21页珍藏版)》请在冰豆网上搜索。

文天学院JAVA课程实践设计题 张亦辰.docx

文天学院JAVA课程实践设计题张亦辰

文天学院JAVA课程实践题

教师:

张亦辰

一、编程求出自然数101~205中的所有素数。

1、算法设计

2、流程图

3、程序清单

publicclassLianXi1{

publicstaticvoidmain(String[]args){

System.out.println("101~205内的素数为:

");

intk=0;

loop:

for(inti=101;i<205;i++){

for(intj=2;j

if(i%j==0){

continueloop;

}

}

k++;

if(k/5==k/5.0)

{

System.out.println(""+i);

}else{

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

}

}

}

}

4、调试结果

5、结果的分析

二、百鸡百钱问题。

公鸡每只3元,母鸡每只5元,小鸡3只1元,用100元钱买100只鸡,公鸡、母鸡、小鸡应各买多少?

1、算法设计

2、流程图

3、程序清单

publicclassSheJi2{

publicstaticvoidmain(String[]a){

for(inti=0;i<=33;i++){//公鸡

for(intj=0;j<=20;j++){//母鸡

intk=100-i-j;//小鸡

if(3*i+5*j+k/3==100&&k%3==0){

System.out.println("百鸡百钱问题:

公鸡"+i+"母鸡"+j+"小鸡"+k);

}

}

}

}

}

4、调试结果

5、结果的分析

三、编程输出如下图所示的图形。

*

***

*****

*******

*********

1、算法设计

2、流程图

3、程序清单

importjava.io.*;

publicclassSheJi3

{

publicstaticvoidmain(Stringargs[])

{

chars1[][]=newchar[6][10];

for(inti=1;i<6;i++)

for(intj=1;j<10;j++)

{

if(j-i<5&&j>5-i)

s1[i][j]='*';

}

for(inti=1;i<6;i++)

for(intj=1;j<10;j++)

{

if(j==9)

System.out.println(""+s1[i][j]);

else

System.out.print(""+s1[i][j]);

}

}

}

4、调试结果

5、结果的分析

四、定义一个复数类complex,内有两个成员变量:

实部和虚部,还有两个方法:

求两个复数和以及求两个复数差。

编程验证该程序的复数加减运算是正确的。

1、算法设计

2、流程图

3、程序清单

importjava.io.*;

publicclassComplex

{

privateintshibu;

privateintxubu;

Complex()

{

}

Complex(intm,intn)

{

shibu=m;

xubu=n;

}

publicComplexplus(Complexc)

{

Complexresult=newComplex();

result.shibu=this.shibu+c.shibu;

result.xubu=this.xubu+c.xubu;

returnresult;

}

publicComplexminus(Complexc)

{

Complexresult=newComplex();

result.shibu=this.shibu-c.shibu;

result.xubu=this.xubu-c.xubu;

returnresult;

}

publicStringoutput()

{

if(this.xubu<0)

{

returnthis.shibu+(this.xubu+"i");

}

elseif(this.xubu>0)

{

returnthis.shibu+"+"+this.xubu+"i";

}

else

{

returnthis.shibu+"";

}

}

publicstaticvoidmain(Stringargs[])

{

intm=Integer.valueOf(args[0]).intValue();

intn=Integer.valueOf(args[1]).intValue();

inta=Integer.valueOf(args[2]).intValue();

intb=Integer.valueOf(args[3]).intValue();

Complexcom1=newComplex(m,n);

Complexcom2=newComplex(a,b);

System.out.print("两个复数之和:

");

System.out.println(com1.plus(com2).output());

System.out.print("两个复数之差:

");

System.out.println(com1.minus(com2).output());

}

}

4、调试结果

5、结果的分析

五、编写Applet程序,在指定大小的屏幕界面上使用不同颜色绘制如下图形:

(1)直径为100像素点的圆;

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

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

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

(5)大小由读者指定的填充圆弧。

1、算法设计

2、流程图

3、程序清单

importjava.applet.Applet;

importjava.awt.*;

publicclassSheJi5extendsApplet

{

Colorcolor[]={Color.yellow,Color.blue,Color.pink,Color.red,Color.green};

publicvoidpaint(Graphicsg)

{

intx=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、调试结果

5、结果的分析

六、编写Applet程序,选择3种不同字体写出字符串“ILOVEBEIJING!

”。

1、算法设计

2、流程图

3、程序清单

importjava.applet.Applet;

importjava.awt.*;

publicclassSheJi6extendsApplet

{

Fontfnt1=newFont("TimesRoman",Font.ITALIC,25);

Fontfnt2=newFont("Braggadcoio",Font.BOLD,40);

Fontfnt3=newFont("MonotypeCorsiva",Font.BOLD,20);

publicvoidpaint(Graphicsg)

{

Stringstr=newString("ILOVEBEIJING!

");

g.setFont(fnt1);

g.drawString(str,30,40);

g.setFont(fnt2);

g.drawString(str,50,80);

g.setFont(fnt3);

g.drawString(str,0,80);

}

}

4、调试结果

5、结果的分析

七、使用JavaApplication编写满足下列要求的程序:

(1)使用GridLayout布局;

(2)设计一个简单的计算器。

包括数字按钮0~9,以及加、减、乘、除、清零、等于运算按钮和一个显示计算结果的文本区。

1、算法设计

2、流程图

3、程序清单

importjava.applet.*;

importjava.awt.*;

importjava.awt.event.*;

publicclassJiSuanQiextendsAppletimplementsActionListener

{

Button[]buts;

Stringnames[]={"0","1","2","3","4","5","6","7","8","9","+","-","*","/","=","Zhiling"};

TextAreatext;

publicvoidinit()

{

text=newTextArea("",20,2);

add(text);

setLayout(newGridLayout(9,4,5,5));

buts=newButton[names.length];

for(inti=0;i

{

buts[i]=newButton(names[i]);

buts[i].addActionListener(this);

add(buts[i]);

}

}

staticinty=0;

staticfloatj=0;

staticintz=0;

publicvoidactionPerformed(ActionEvente)

{

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

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

{

charx;

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

text.append(""+x);

y=y*10+i;

}

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

{

inti=y;

y=0;

j=j+i;

z=1;

text.append("+");

}

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

{

inti=y;

y=0;

if(j==0)

j=j+i;

else

j=j-i;

z=2;

text.append("-");

}

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

{

inti=y;

y=0;

if(j==0)

j=j+i;

else

j=j*i;

z=3;

text.append("*");

}

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

{

inti=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;

elseif(z==2)

j=j-y;

elseif(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();

}

}

4、调试结果

5、结果的分析

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

(1)有一个菜单条;

(2)菜单条中有3个菜单;

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

1、算法设计

2、流程图

3、程序清单

importjava.awt.*;

importjava.awt.event.*;

publicclassSheJi8extendsFrameimplementsActionListener,ItemListener

{

publicSheJi8()

{

super("我的窗口");

setSize(450,250);

}

publicvoidinit()

{

MenuBarmyB=newMenuBar();

setMenuBar(myB);

Menum1=newMenu("文件");

m1.add("新建");

Menum12=newMenu("打开");

m12.add("Word");

m12.add("Ppt2");

m12.addActionListener(this);

m1.addActionListener(this);

m1.add(m12);

myB.add(m1);

Menum2=newMenu("编辑");

m2.add("撤销");

Menum21=newMenu("剪切");

m21.add("Ppt3");

m21.add("Ppt4");

m21.addActionListener(this);

m2.addActionListener(this);

m2.add(m21);

myB.add(m2);

Menum3=newMenu("格式");

m3.add("结束");

Menum31=newMenu("字体");

m31.add("大小");

m31.add("颜色");

m31.addActionListener(this);

m3.addActionListener(this);

m3.add(m31);

myB.add(m3);

}

publicstaticvoidmain(Stringargs[])

{

SheJi8myMenu=newSheJi8();

myMenu.init();

myMenu.setVisible(true);

}

publicvoiditemStateChanged(ItemEvente)

{

}

publicvoidactionPerformed(ActionEvente)

{

if(e.getActionCommand()=="结束")

System.exit(0);

}

}

4、调试结果

5、结果的分析

九、定义一个circle类,其中有求面积的方法,当圆的半径小于0时,抛出一个自定义的异常。

编程实现之。

1、算法设计

2、流程图

3、程序清单

classMyExceptionextendsException

{

privateintnum;

MyException(intx)

{

num=x;

}

publicStringtoString()

{

return"MyException:

"+num;

}

}

importjava.io.*;

publicclassCircle

{

privateintradius;

staticdoublearea(intr)throwsMyException

{

System.out.println("调用方法:

area("+r+")");

doubleArea;

finaldoublePi;

Pi=3.1415927;

if(r<0)

{

MyExceptione=newMyException(r);

throwe;

}

Area=Pi*r*r;

returnArea;

}

publicstaticvoidmain(Stringargs[])

{

inti=Integer.valueOf(args[0]).intValue();

try

{

doublearea1=area(i);

System.out.println("\t圆面积="+area1+"\n");

}

catch(MyExceptione)

{

System.out.println("\t捕捉异常:

"+e.toString()+"\n");

}

}

}

}4、调试结果

5、结果的分析

十、分析程序的输出结果题。

7-1程序实例1

publicclassDaemonextendsThread{

publicstaticvoidmain(String[]args){

Threadthread=newDaemon();

System.out.println("ThePriorityofCurrentThreadis"+thread.getPriority());

thread.start();

for(inti=1;i<=5;i++){

System.out.println("MainThread:

"+i);

sleep(2000);

}

System.out.println("MainThread:

done");

}

publicvoidrun(){

Stringname=null;

for(inti=1;i<=10;i++){

if(isDaemon())

name="DaemonThread:

";

else

name="UserThread:

";

System.out.println(name+i);

sleep(2000);

}

System.out.println(name+"done");

}

publicstaticvoidsleep(intmsec){

try{

Thread.currentThread().sleep(msec);

}catch(InterruptedExceptione){

System.out.println(e);

}

}

}

调试结果

7-2程序实例2(注:

该程序用到了java.util包中的两个类:

Timer类和TimerTask类,TimerTask类实现了Runnable接口)

importjava.util.*;

importjava.io.*;

publicclassTestTimers{

publicstaticvoiddoMain()throwsException{

Timert=new Timer(true);

t.schedule(newPing("Fixeddelay"),0,1000);

Thread.currentThread().sleep(12000);

}

publicstaticvoidmain(String[]args){

try{

System.out.println("MainThread:

done");

}

publicvoidrun(){

Stringname=null;

for(inti=1;i<=10;i++){

if(isDaemon())

name="DaemonThread:

";

else

name="UserThread:

";

System.out.println(name+i);

sleep(2000);

}

System.out.println(name+"done");

}

publicstaticvoidsleep(intmsec){

try{

Thread.currentThread().sleep(msec);

}catch(InterruptedExceptione){

System.out.println(e);

}

}

}

调试结果

7-2程序实例2(注:

该程序用到了java.util包中的两个类:

Timer类和TimerTask类,TimerTask类实现了Runnable接口)

importjava.util.*;

importjava.io.*;

publicclassTestTimers{

publicstaticvoiddoMain()throwsException{

Timert=new Timer(true);

t.schedule(newPing("Fixeddelay"),0,1000);

Thread.currentThread().sleep(12000);

}

publicstaticvoidmain(String[]args){

try{

publicvoidrun(){

while(tick<400000){

tick++;

if(tick%50000==0)

System.out.println("Thread#"+num+",tick="+tick);

}

}

} 

调试结果

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1