java期末上机考试题详细代码和注释_第1页
java期末上机考试题详细代码和注释_第2页
java期末上机考试题详细代码和注释_第3页
java期末上机考试题详细代码和注释_第4页
java期末上机考试题详细代码和注释_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

复习题

1,产生n个30以内的随机数,统计并输出1,2,3,各数段的数的个数,并输出数

中的最大数和最小数。

〃导入包用于创建输入对象

importjavaoutil。火;

〃创建随机测试类

publiccIassRandomTest

(

〃创建输入静态对象sc

staticScannerreader=newScanner(System,in);

〃创建类数组和N用力存放随机产生的N个随机数字

staticintnum[],N;

pubIicstaticvoidmain(Stringargs[])

(

〃定义m,n,k用于统计,max存放最大值,min存放最小值

intm=0,n=0,k=0,max=0,min=0;

System。out。print(”请输入需要产生随机数的个数:”);

N=readeronextInt();

Systemoout.println("随机产生"+N+”个30以内的随机整数是:");

num=newint[N];

for(inti=0;i<N:i++)

(

//利用For循环随机产生N个30以内的随机整数,并且赋值给数组

num[i]=(int)(Math,random()*30);

〃用m,n,k统计0—10—20-30三个段的数字的个数

if((num[i]/10)=0)

m++;

if((num[i]/10)==1)

n++:

if((num[i]/10)==2)

k++;

〃第一次循环给最值赋值

if(i==0)

max=min=num[0];

〃从第二次循环开始求最值

if(i>0)

(

for(intj=0;j<=i;j++)

(

if(num[j]>max)

nax=num[j];

if(numLi]<min)

nin=num[i];

)

)

〃依次输出随机数

Systemoout。print(num[i]+"");

)

//最后统一输出结果

System,out.printIr("\n随机数字的个数统计如下:");

Systemoout.printIn(“0到9之间有:“+m+"个。”);

System,out.printIn("10到19之间有:"+n+"个。");

System.outoprintin,'20到29之间有:"+k+"个。”);

Systemoout。println("最大的随机数是:"+max);

Systemoout.println(n最小的随机数是:"+min);

)

)

2,定义一个接口,接口中有四个抽象方法:求面积方法、求周长方法、显示面积

方法及显示周长方法。定义Circle类和Rectangle类分别实现接口,在主类中实

现显示圆和矩形的面积和周长。

〃导入包用于创建输入对象

importjava,utiI<»*:

〃创建接口一几何

iinterfacejihe

{

〃定义计算面积的方法

pubIicvoidmianJi();

〃定义计算周长的方法

pubIicvoidzhouChang();

〃定义显示面积的方法

pubIicvoidoutMianJi();

〃定义显示周长的方法

pubIicvoidoutZhouChang();

)

//定义圆类-Circle实现接口一几何

cIassCircleimpIementsjihe

(

〃定义半径、面积、周长为类的成员变量

staticdoubIeR,S,L;

〃构造方法初始化半径

pubIicCircle(doubIei)

(

R二i;

System.out.print("圆形---半径为:"+R);

1

〃实现接口里的计算面积的方法

pubIicvoidmianJi()

{

S二3。14159*R*R;

)

〃实现接口里的计算周长的方法

pubIicvoidzhouChang()

{

L=2*3。14159*R;

)

〃实现接口里的显示面积的方法

publicvoidoutMianJi()

(

System®out«print(",面积为:"+S);

)

〃实现接口里的显示周长的方法

publicvoidoutZhouChang()

(

System.out.print(M,周长为:"+L);

)

}

//定义矩形类一rectangle实现接口-几何

cIassRectangimpIementsjihe

(

〃定义长、宽、面积、周长为类的成员变量

staticintA,B,S,L;

〃构造方法初始化矩形的长和宽

publicRectang(inti,intj)

(

A=i;

B二j;

n

Systemoout.print(矩形---长为:"+A);

Systemoout。print(二宽为:"+B);

}

〃实现接口里的计算面积的方法

pubIicvoidmianJi()

(

S=A*B;

)

〃实现接口里的计算周长的方法

publicvoidzhouChang()

{

L=2*(A+B);

)

〃实现接II里的显示面积的方法

pubIicvoidoutMianJi()

{

System.outoprint(n,面积为:"+S):

)

〃实现接口里的显示周长的方法

pubIicvoidoutZhouChang()

(

System.out.printIn(二周长为:“+L);

)

)

//定义主类InterfaceTest,调用圆类和矩形类

publiccIassInterfaceTest

(

〃创建输入静态对象sc

staticScannerreader=newScanner(System。in);

publicstaticvoidmain[Stringargs[])

(

〃创建圆类的对象

Systemoout。print("请输入圆的半径:");

intr=readeronextInt();

CircleCir-newCircIc(r);

〃调用圆类的方法

Cir.mianJi();

Cir.zhouChang();

Cir0outMianJi();

CirooutZhouChang();

〃创建矩形类的对象

System,outoprint(”\n请输入矩形的长:");

inti=reader。nextInt();

System,out.print("请输入矩形的宽:");

intj=reader.nextInt();

RectangRect=newRectang(i,j);

〃调用矩形类的方法

Rect.mianJi();

RectozhouChang();

Rect.outMianJi();

Rect.outZhouChang();

1

)

3,用户在两个输入框中分别输入两个整数,单击“求积”按钮,在第三个输入框中

显示两数中的积,单击“求和”按钮,在第四个输入框中显示两数的和.

〃导入系统的类包

importjava0awt.*;

importjava。awt®event.*;

importjavaxoswing。*;

〃创建计算类JiSuanTest—用于图形化的求积、求和

cIassJiSuanTestextendsJFrameimpIementsActionListener

(

〃声明组件对象

JLabel11,12;

JTextFieldt1,t2,t3,t4;

JButtonb1,b2;

〃构造函数

pubIicJiSuanTest()

(

〃创建组件对象

I1=newJLabelC数字1:");

I2=newJLabel("数字2:");

t1=newJTextField(6);

t2=newJTextFieId(6);

t3=newJTextFieId(6);

t4=newJTextField(6);

b1=newJButton("求积”);

b2-ncwJButton(5,求和“);

//引发动作事件监听器

b1.addActionListerer(this):

b2oaddActionListener(this);

〃布局

setLayout(newGridLayout(4,2));

〃加载对象

add(l1);

add(t1);

add(l2);

add(t2);

add(b1);

add(t3);

add(b2);

add(t4);

〃设置框架属性

setSize(220,260);

setTitle(”求两个数的积与和”);

setVisible(true):

〃通过屏幕和控件的大小计算控件左上角的位置,使窗体居中

doubIescr_width=Toolkit°getDefauItToolkit().getScreenSize()0

getWidth();

doubIescrheight=TooIkit.getDefauItTooIkit().getScreenSize()。

getHeight();

doubIex1=(scr_width-getWidth())/2;

doubley1=(scr_height—getHeight())/2;

intx=newDouble(x1).intVaIue();

inty=newDouble(y1)。intVaIue();

〃设定窗体的左上坐标,使窗体居中

setLocation(x,y);

〃窗体的默认关闭方法

setDefauItCIoseOperation(EXIT_ON_CLOSE);

)

〃动作事件监听器函数

pubIicvoidactionPerformed(ActionEvente)

(

〃点击“求积”按钮

if(e.getSource()~b1)

n

t3.setText("+(IntegeroparseInt(t1.getText())*Integero

parselnt(t20getText())));

〃点击“求和”按钿

if(e«getSource()==b2)

t4.setText(""+(Integer□parseInt(t1。getText())

+lnteger.parselnt(t2。getText())));

}

〃主函数

pubIicstaticvoidmain;Stringargs[])

(

〃创建对象自动调用构造函数

newJiSuanTest():

)

)

4,设计一个下拉式菜单和弹出式菜单,菜单标题为:设置窗体背景色。菜单中包含

4个选项:红色、绿色、蓝色、退出,快捷键如下图所示,并在“蓝色”与“退出”

选项间加一条分隔线,给菜单项注册事件监听器并完成相应的功能。

〃导入系统的类包

importjava。awto*;

importjava0awt©event。*;

importjavaxoswing。*;

〃创建色彩菜单类ColorMenu

cIassCoIorMenuextendsJFrameimpIementsActionListener

(

〃声明所需的对象

MenuBarMenuBarl;

MenuMenul;

MenuItemItem1,Item2,Item3,Item4,Item5,Item6,Item7,Item8;

JTextAreata;//此处使用了swing里的JTextArea

PopupMenupopupMenul;

〃构造方法

pubIicCoIorMenu()

〃创建声明的对象

MenuBar1=newMenuBar();

Menu1=newMenu("菜单");

setMenuBar(MenuBarD;

MenuBarl.add(Menul);

〃创建快捷键和菜单项

MenuShortcutshortcutknewMenuShortcut(KeyEventoVK_1);

Item1=newMenultem(“红色”,shortcutl);

MenuShortcutshortcut2=newMenuShortcut(KeyEvent.VK_2);

Item2=newMenuItern(“绿色“,shortcut?);

MenuShortcutshortcut3=newMenuShortcut(KeyEvent.VK_3);

Item3=newMenultem("蓝色",shortcuts);

MenuShortcutshortcut4=newMenuShortcut(KeyEventoVK_4);

Item4=newMenuItem("退出”,shortcut4);

〃添加菜单项到菜单

Menuloadd(Item1);

Menuloadd(Itcm2);

Menul.add(Item3);

Menul.addSeparator();

Menul.add(Item4);

〃添加动作事件监听器

Item1oaddActionListener(this);

Item2.addActionListener(this);

Item3.addActionListener(this);

Item4.addActionListener(this);

//创建文本区的菜单项

Item5=newMenuItem("红色”);

Item6=newMenultem("绿色");

Item7=newMenuItem(M蓝色");

Item8=newMenuItem(“退出”);

〃在文本区添加右键菜单

ta=newJTextArea();

add(ta);

popupMenul=newPopupMenu();

ta。add(popupMenul):

〃匿名类一添加右键弹出式的菜单的事件

ta。addMouseListener(newMouseAdapter()

pubIicvoidmouseCIicked(MouseEvente)

if(e.getModifiers()==MouseEvent.BUTT0N3_MASK)

popupMenul0show(ta,e.getX().e.getY());

)

)

);

〃添加菜单项到右键菜单

popupMenul.add(Item5);

popupMenuloadd(Item6);

popupMenul.add(Item7);

popupMenul.add(Item8);

〃添加动作事件监听器

Item5.addActionListener(this);

Item6<,addActionListener(this);

Item7oaddActionListener(this);

Item8oaddActionListener(this);

〃设置窗口的属性

setSize(230,200);

setTitle(n色彩与菜单”);

setVisible(true);

〃通过屏幕和控件的大小计算控件左上角的位置,使窗体居中

doubIcscr_width-TooIkit0gctDcfauItTooIkit()。

getScreenSize().getWidth();

doubIescr_height=TooIkit.getDefauItTooIkit().getScreenSize

0.getHeight();

doubIex1=(scr_width-getWidth())/2;

doubley1=(scr_height-getHeight())/2;

intx=newDouble(x1)ointVaIue();

inty=newDouble(y1).intValue();

〃设定窗体的左上坐标,使窗体居中

setLocation(x,y);

〃窗体的默认关闭方法

setDefauItCIoseOperation(EXIT0N_CL0SE);

)

〃动作事件监听器方法

pubIicvoidactionPerformed(ActionEvente)

(

〃点击菜单栏的菜单项时引发的事件

if(e.getSource()==ltem1)

ta.setBackground(CoIor.red);

if(e.getSource0==Item2)

ta.setBackground(Color<,green);

if(e.getSource()==ltem3)

ta.setBackground(Color,blue);

if(eogetSource()—Item4)

System,exit(0);

〃点击右键的菜单项时引发的事件

if(eogetSource()==ltem5)

ta.setBackground(CoIorored);

if(e。getSource()==Item6)

ta。setBackground(Color,green);

if(eogetSource()==ltem7)

ta。setBackground(Color0bIue);

if(e0getSource()==Item8)

Systenioexit(0);

)

〃主函数

pubIicstaticvoidmain(Stringargs[])

f

//创建对象,自动调用其构造方法

newColorMenu();

)

)

5,构造函数初始化为坐标原点,然后定义一个方法实现点的移动,再定义一个方

法打印当前点的坐标。并创建一个对象验证。

〃导入包用于创建输入对象

importjava.util。*;

〃创建主类PointTestTest

pubIiccIassPointTest

(

〃创建输入静态对象sc

staticScannerreader=newScanner(System,in);

〃定义类的实例变量

privateintx,y;

privateStringname;

〃无参的构造函数

pubIicPointTest0

(

thiSox=0;

this.y=0:

thiSoname="原点";

}

〃带参的构造函数

pubIicPointTest(intx,inty,Stringname)

(

this.x=x;

this.y=y;

thiSoname=name:

}

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论