JAVA程序设计机试题目复习大纲范文.docx
《JAVA程序设计机试题目复习大纲范文.docx》由会员分享,可在线阅读,更多相关《JAVA程序设计机试题目复习大纲范文.docx(21页珍藏版)》请在冰豆网上搜索。
JAVA程序设计机试题目复习大纲范文
JAVA程序设计机试题目复习大纲
1.打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
publicclasslianxi03{
publicstaticvoidmain(String[]args){
intb1,b2,b3;
for(intm=101;m<1000;m++){
b3=m/100;
b2=m%100/10;
b1=m% 10;
if((b3*b3*b3+b2*b2*b2+b1*b1*b1)==m){
System.out.println(m+"是一个水仙花数");}
}
}
}
2.判断101-200之间有多少个素数,并输出所有素数。
publicclasslianxi02{
publicstaticvoidmain(String[]args){
intcount=0;
for(inti=101;i<200;i+=2){
booleanb=false;
for(intj=2;j<=Math.sqrt(i);j++)
{
if(i%j==0){b=false;break;}
else {b=true;}
}
if(b==true){count++;System.out.println(i);}
}
System.out.println("素数个数是:
"+count);
}
}
3.一个数如果恰好等于它的因子之和,这个数就称为"完数"。
例如6=1+2+3.编程 找出1000以内的所有完数。
publicclasslianxi09{
publicstaticvoidmain(String[]args){
System.out.println("1到1000的完数有:
");
for(inti=1;i<1000;i++){
intt=0;
for(intj=1;j<=i/2;j++){
if(i%j==0){
t=t+j;
}
}
if(t==i){
System.out.print(i+" ");
}
}
}
4.有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?
都是多少?
publicclasslianxi11{
publicstaticvoidmain(String[]args){
intcount=0;
for(intx=1;x<5;x++){
for(inty=1;y<5;y++){
for(intz=1;z<5;z++){
if(x!
=y&&y!
=z&&x!
=z){
count++;
System.out.println(x*100+y*10+z);
}
}
}
}
System.out.println("共有"+count+"个三位数");
}
}
5.输出9*9乘法表。
publicclasslianxi16{
publicstaticvoidmain(String[]args){
for(inti=1;i<10;i++){
for(intj=1;j<=i;j++){
System.out.print(j+"*"+i+"="+j*i+" ");
if(j*i<10){System.out.print("");}
}
System.out.println();
}
}
}
6.利用菜单和窗口编写一个简单的文本编辑器。
importjava.io.*;
importjava.awt.*;
importjava.awt.event.*;
publicclassmyextendsFrameimplementsActionListener{
privatestaticfinallongserialVersionUID=1L;
FileDialogfileDlg;
Stringstr,fileName;
bytebyteBuf[]=newbyte[10000];
TextAreata=newTextArea();
MenuBarmb=newMenuBar();
Menuml=newMenu("Menu");
MenuItemopen=newMenuItem("open");
MenuItemclose=newMenuItem("clear");
MenuItemsave=newMenuItem("save");
MenuItemexit=newMenuItem("exit");
@SuppressWarnings("deprecation")
my(){
setTitle("my");
setSize(600,400);
add("Center",ta);
addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){System.exit(0);}});
ml.add(open);
ml.add(close);
ml.add(save);
ml.addSeparator();
ml.add(exit);
open.addActionListener(this);
save.addActionListener(this);
close.addActionListener(this);
exit.addActionListener(this);
mb.add(ml);
setMenuBar(mb);
show();
}
@SuppressWarnings("deprecation")
@Override
publicvoidactionPerformed(ActionEvente){
//TODOAuto-generatedmethodstub
if(e.getSource()==exit)
System.exit(0);//
elseif(e.getSource()==close)
ta.setText(null);
elseif(e.getSource()==open)
{
fileDlg=newFileDialog(this,"OpenFile");
fileDlg.show();
fileName=fileDlg.getFile();
try{
FileInputStreamin=newFileInputStream(fileName);
in.read(byteBuf);
in.close();
str=newString(byteBuf);
ta.setText(str);
setTitle("my-"+fileName);
}catch(IOExceptionioe){}
}
elseif(e.getSource()==save){
fileDlg=newFileDialog(this,"saveFile",FileDialog.SAVE);
fileDlg.show();
fileName=fileDlg.getFile();
str=ta.getText();
byteBuf=str.getBytes();
try{
FileOutputStreamout=newFileOutputStream(fileName);
out.write(byteBuf);
out.close();
}catch(IOExceptionioe){}
}
}
publicstaticvoidmain(Stringargs[]){
newmy();
}
}
7.编写一个可以计算面积与体积的接口,以及实现这个接口的四边形类(包括矩形,平行四边形和梯形)。
importjava.awt.*;
interfaceArea//可计算面积接口
{
publicabstractdoublearea();//计算面积
}
interfaceVolume//可计算体积接口
{
publicabstractdoublevolume();//计算体积
}
classRectangleimplementsArea//矩形类,实现可计算面积接口
{
protecteddoublelength,width;//长度和宽度
publicRectangle(doublelength,doublewidth)//构造方法
{
this.length=length;
this.width=width;
}
publicdoublearea()//计算矩形面积,实现Area接口中的抽象方法
{
returnthis.width*this.length;
}
publicStringtoString()
{
return"一个矩形,长度"+this.length+",宽度"+this.width+
",面积为"+this.area();
}
}
classRegextendsRectangleimplementsVolume//长方体类继承矩形类实现可计算体积接口
{
protecteddoubleheight;//高度
publicReg(doublelength,doublewidth,doubleheight)//构造方法
{
super(length,width);
this.height=height;
}
publicdoublevolume()//计算长方体的体积,实现Volume接口中的抽象方法
{
returnsuper.area()*this.height;
}
publicStringtoString()
{
return"一个长方体,长度"+this.length+",宽度"+this.width+",高度"+this.height
+",表面积为"+this.area()+",体积为"+this.volume();
}
}
publicclassa7
{
publicstaticvoidmain(Stringargs[])
{
System.out.println(newReg(10,20,30).toString());
System.out.println(newRectangle(10,20).toString());
}
}
8.利用文本框、标签、按钮等完成一个界面:
输入一个平时成绩,一个实验成绩,一个期末成绩。
按照一定的比例自动出现一个综合成绩。
importjava.applet.*;
importjava.awt.*;
importjava.awt.event.*;
publicclassa8extendsAppletimplementsActionListener
{
TextFieldtxtSY;
TextFieldtxtPS;
TextFieldtxtQM;
TextFieldtxtSum;
Buttonbt;
publicvoidinit()
{
txtSY=newTextField(15);
txtPS=newTextField(15);
txtQM=newTextField(15);
txtSum=newTextField(15);
txtSum.setEditable(false);
bt=newButton("计算");
add(newLabel("实验成绩"));
add(txtSY);
add(newLabel("平时成绩"));
add(txtPS);
add(newLabel("期末成绩"));
add(txtQM);
add(newLabel("总成绩"));
add(txtSum);
add(bt);
bt.addActionListener(newButtonAct());
this.setSize(250,150);
this.setVisible(true);
}
classButtonActimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
intop1,op2,op3;
doubleop4;
if(e.getSource()==bt)
{
op1=Integer.valueOf(txtSY.getText());
op2=Integer.valueOf(txtPS.getText());
op3=Integer.valueOf(txtQM.getText());
op4=op1*0.2+op2*0.2+op3*0.6;
txtSum.setText(String.valueOf(op4));
}
}
}
}
9.利用文本框、标签、按钮等完成一个界面:
选择输入的是“人民币”、“美元”、“欧元”:
转换成另外两种币种的货币转换界面。
10.编写一个能够进行简单四则混合运算的计算器。
importjava.applet.*;
importjava.awt.*;
importjava.awt.event.*;
publicclassa10extendsApplet
{
TextFieldtxt1,txt2,txt3;
Buttonbt1,bt2;
CheckboxGroupselect;
Checkboxa,s,m,d;
publicvoidinit()
{
txt1=newTextField(15);
txt2=newTextField(15);
txt3=newTextField(15);
bt1=newButton("计算");
bt2=newButton("重置");
select=newCheckboxGroup();
a=newCheckbox("加",true,select);
s=newCheckbox("减",true,select);
m=newCheckbox("乘",true,select);
d=newCheckbox("除",true,select);
add(bt1);add(bt2);
add(txt1);add(txt2);add(txt3);
add(a);add(s);add(m);add(d);
txt3.setEditable(false);
bt1.addActionListener(newButtonAct());
bt2.addActionListener(newButtonAct());
this.setVisible(true);
}
classButtonActimplementsActionListener
{
publicvoidactionPerformed(ActionEvente)
{
intop1,op2,op3;
if(e.getSource()==bt1)
{
op1=Integer.valueOf(txt1.getText());
op2=Integer.valueOf(txt2.getText());
if(a.getState())
op3=op1+op2;
elseif(s.getState())
op3=op1-op2;
elseif(m.getState())
op3=op1*op2;
else
op3=op1/op2;
txt3.setText(Integer.toString(op3));
}
else
{
txt1.setText("");
txt1.setText("");
txt1.setText("");
a.setState(true);
}
}
}
}
11.编写一个求平均值的接口与实现该接口的类。
importjava.awt.*;
importjava.awt.event.*;
interfaceAverage
{
publicabstractdoublegetAverage(double[]data);
}
classavg1implementsAverage
{
publicdoublegetAverage(double[]data)
{
doublesum=0;//总和
doubleresult=0;//结果
intlength=data.length;
for(inti=0;isum+=data[i];
}
result=sum/length;
returnresult;
}
}
publicclassa
{
publicstaticvoidmain(Stringarg[])
{
Method1h=newMethod1();
double[]arr={2,3,4,5,6};
doublex=h.getAverage(arr);
System.out.print(x);
}
}
12.利用窗体和文本域以及上题中设计的类设计一个“模拟裁判评分”的程序。
importjava.awt.*;
importjava.awt.event.*;
interfaceAverage
{
publicabstractdoublegetAverage(double[]data);
}
classavg2implementsAverage
{
publicdoublegetAverage(double[]data)
{
doublesum=0;//总和
doubleresult=0;//结果
intlength=data.length;
for(inti=0;isum+=data[i];
}
sum=sum-this.getMax(data)-this.getMin(data);//总和减去最大值、最小值
length-=2;//个数减去2
result=sum/length;
returnresult;
}
//获得数组的最大值
publicdoublegetMax(double[]data)
{
doublemax=0;
for(inti=0;i{
if(data[i]>=max)
{
max=data[i];
}
}
returnmax;
}
//获得数组的最小值
publicdoublegetMin(double[]data)
{
doublemin=0;
for(inti=0;i{
if(data[i]<=min)
{
min=data[i];
}
}
returnmin;
}
}
publicclassa
{
publicstaticvoidmain(Stringarg[])
{
avg2h=newavg2();
double[]arr={2,5,4,6,10};
doubleavg=h.getAverage(arr);
System.out.print(avg);
}
}
13.设计一个数字时钟。
importjava.awt.*;
importjava.util.*;
importjavax.swing.*;
//数字时钟
publicclassm11extendsJFrameimplementsRunnable{
Threadclock;
publicm11(){
super("数字时钟");//调用父类构造函数
setFont(newFont("TimesNewRoman",Font.BOLD,60));//设置时钟的显示字体
start();//开始进程
setSize(280,100);//设置窗口尺寸
setVisible(true);//窗口可视
this.setLocation(440,330);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭窗口时退出程序
}
publicvoidstart(){//开始进程
if(clock==null){//如果进程为空值
clock=n