JAVA编程题全集100题及问题详解文档格式.docx

上传人:b****5 文档编号:18890735 上传时间:2023-01-02 格式:DOCX 页数:18 大小:23.92KB
下载 相关 举报
JAVA编程题全集100题及问题详解文档格式.docx_第1页
第1页 / 共18页
JAVA编程题全集100题及问题详解文档格式.docx_第2页
第2页 / 共18页
JAVA编程题全集100题及问题详解文档格式.docx_第3页
第3页 / 共18页
JAVA编程题全集100题及问题详解文档格式.docx_第4页
第4页 / 共18页
JAVA编程题全集100题及问题详解文档格式.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

JAVA编程题全集100题及问题详解文档格式.docx

《JAVA编程题全集100题及问题详解文档格式.docx》由会员分享,可在线阅读,更多相关《JAVA编程题全集100题及问题详解文档格式.docx(18页珍藏版)》请在冰豆网上搜索。

JAVA编程题全集100题及问题详解文档格式.docx

System.out.println(“1!

=〞+sum);

3、依次输入10个学生成绩,判断学生〔优秀、良好、中等、与格、不与格〕并计算人数〔switch〕

4、使用冒泡排序〔数组〕

publicclassBubbleSort{

publicstaticvoidmain(String[]args){

int[]array={63,4,24,1,3,5};

BubbleSortsorter=newBubbleSort();

sorter.sort(array);

//冒泡排序

publicvoidsort(int[]array){

for(inti=1;

array.length;

i++)

for(intj=0;

j<

array.length-1;

j++){

if(array[j]>

array[j+1]){

inttemp=array[j];

array[j]=array[j+1];

array[j+1]=temp;

showArray(array);

//遍历数组,并输出数组的元素。

publicvoidshowArray(int[]array){

for(inti=0;

i++){

System.out.print(array[i]+"

\t"

System.out.println();

5、实现会员注册,要求用户名长度不小于3,密码长度不小于6,注册时两次输入密码必须一样〔字符串〕

importjava.util.Scanner;

publicclassRegister{

Stringname;

Stringpassword;

StringnewPassword;

///////////

publicvoidnameExe(){

Scannerinput=newScanner(System.in);

System.out.println("

请输入用户名,密码和验证密码"

System.out.print("

用户名:

name=input.next();

密码:

password=input.next();

验证密码:

newPassword=input.next();

while(name.length()<

3||(password.equals(newPassword)==false)

||(password.length()<

6)){

if(name.length()<

3){

用户名不能小于3"

if((password.equals(newPassword)==false)||password.length()<

6){

两次输入密码不一样或密码不能小于6位"

\n"

+"

请重新输入"

System.out.println("

注册成功!

publicclassVerify{

Registerm1=newRegister();

m1.nameExe();

6、一个景区根据游人的年龄收取不同价格的门票。

请编写游人类,根据年龄段决定能够购置的门票价格并输出,然后写出测试类测试该类〔类的根本实现〕

publicclassTourist{

intage;

intticketPrice;

publicvoidsetAge(intage){

this.age=age;

publicvoidticket(){

if(age>

0&

age<

12)

ticketPrice=20;

elseif(age<

20)

ticketPrice=40;

50)

ticketPrice=80;

ticketPrice=35;

门票价格:

+ticketPrice);

}/////

publicclassTest{

Touristt1=newTourist();

System.out.print("

请输入年龄:

t1.setAge(input.nextInt());

t1.ticket();

7、〔1〕编写一个圆类Circle,该类拥有:

①一个成员变量

Radius〔私有,浮点型〕;

//存放圆的半径;

②两个构造方法

Circle()//将半径设为0

Circle(doubler)//创建Circle对象时将半径初始化为r

③三个成员方法

doublegetArea()//获取圆的面积

doublegetPerimeter()//获取圆的周长

voidshow()//将圆的半径、周长、面积输出到屏幕

〔2〕编写一个圆柱体类Cylinder,它继承于上面的Circle类。

还拥有:

doublehight〔私有,浮点型〕;

//圆柱体的高;

②构造方法

Cylinder(doubler,doubleh)//创建Circle对象时将半径初始化为r

③成员方法

doublegetVolume()//获取圆柱体的体积

voidshowVolume()//将圆柱体的体积输出到屏幕

编写应用程序,创建类的对象,分别设置圆的半径、圆柱体的高,计算并分别显示圆半径、圆面积、圆周长,圆柱体的体积。

//ProgrammeName

classCircle{//定义父类--园类

privatedoubleradius;

//成员变量--园半径

Circle(){//构造方法

radius=0.0;

Circle(doubler){//构造方法

radius=r;

doublegetPerimeter(){//成员方法--求园周长

return2*Math.PI*radius;

doublegetArea(){//成员方法--求园面积

returnMath.PI*radius*radius;

voiddisp(){//成员方法--显示园半径、周长、面积

圆半径="

+radius);

圆周长="

+getPerimeter());

圆面积="

+getArea());

classCylinderextendsCircle{//定义子类--圆柱类

privatedoublehight;

//成员变量--园柱高

Cylinder(doubler,doubleh){//构造方法

super(r);

hight=h;

publicdoublegetVol(){//成员方法--求园柱体积

returngetArea()*hight;

publicvoiddispVol(){//成员方法--显示园柱体积

圆柱体积="

+getVol());

publicclassTestCylinder{//定义主类

publicstaticvoidmain(String[]args){//主程入口

CircleCi=newCircle(10.0);

//生成园类实例

Ci.disp();

//调用园类的方法

CylinderCyl=newCylinder(5.0,10.0);

//生成圆柱类实例

Cyl.disp();

//调用父类方法

Cyl.dispVol();

//调用子类方法

8、编写一个Java应用程序,从键盘读取用户输入两个字符串,并重载3个函数分别实现这两个字符串的拼接、整数相加和浮点数相加。

要进展异常处理,对输入的不符合要求的字符串提示给用户,不能使程序崩溃。

〔异常处理〕

//programme

importjava.io.*;

publicclassStrinput

{

publicstaticvoidmain(Stringargs[]){

Strings1=null,s2=null,ss,si,sf;

inti1,i2;

floatf1,f2;

BufferedReaderstrin=newBufferedReader(newInputStreamReader(System.in));

try{System.out.print("

输入第一个字符串:

);

s1=strin.readLine();

System.out.print("

输入第二个字符串:

s2=strin.readLine();

catch(Exceptione){System.out.println(e.getMessage());

i1=Integer.parseInt(s1);

i2=Integer.parseInt(s2);

f1=Float.parseFloat(s1);

f2=Float.parseFloat(s2);

ss=strAdd(s1,s2);

si=strAdd(i1,i2);

sf=strAdd(f1,f2);

System.out.println("

输入的二个字符串相加结果为:

+ss);

输入字符串转换为整数相加结果为:

+si);

输入字符串转换为浮点数相加结果为:

+sf);

staticStringstrAdd(Stringstr1,Stringstr2){

returnstr1+str2;

staticStringstrAdd(intint1,intint2){

returnString.valueOf(int1+int2);

staticStringstrAdd(floatflt1,floatflt2){

returnString.valueOf(flt1+flt2);

9、应用FileInputStream类,编写应用程序,从磁盘上读取一个Java程序,并将源程序代码显示在屏幕上。

〔被读取的文件路径为:

E:

/myjava/Hello.java〕

publicclassFISDemo{

publicstaticvoidmain(Stringargs[]){

byte[]buf=newbyte[2056];

try{

FileInputStreamfileIn=newFileInputStream("

e:

/myjava/Hello.java"

intbytes=fileIn.read(buf,0,2056);

Stringstr=newString(buf,0,bytes);

System.out.println(str);

}catch(Exceptione){

e.printStackTrace();

10、编写一个Java程序将当100,101,102,103,104,105个数以数组的形式写入到文件中,并以相反的顺序读出显示在屏幕上。

〔文件〕

publicclassIODemo{

publicstaticvoidmain(Stringargs[]){

intdata[]={100,101,102,103,104,105};

int[]t=newint[200];

try{

//Filefile=newFile("

dest.txt"

DataOutputStreamout=newDataOutputStream(newFileOutputStream("

));

data.length;

i++)

out.writeInt(data[i]);

写入

out.close();

DataInputStreamin=newDataInputStream(newFileInputStream("

//先读出来再倒序输出

t[i]=in.readInt();

for(inti=data.length-1;

i>

=0;

i--){

"

+t[i]);

/*for(inti=data.length-1;

t=in.readInt(data[i]);

+t);

}*/

System.out.println();

in.close();

}catch(IOExceptione)

{

System.out.println(e.getMessage());

11、编写一个Java程序实现多线程,在线程中输出线程的名字,隔300毫秒输出一次,共输出20次。

//programmenameTestThread;

//声明一个子线程类Threaddemo;

classThreadDemoextendsThread{

publicThreadDemo(Stringstr){

super(str);

publicvoidrun(){

for(inti=0;

20;

i++){

System.out.print(“〞+this.getName());

Try{

Sleep(300);

}catch(InterruptedExceptione){

System.out.println(e.getMessage());

Return;

System.out.println(“/end〞);

publicclassTestThread{

publicstaticvoidmain(Stringargs[]){

ThreadDemothread1=newThreadDemo(“T1〞);

ThreadDemothread2=newThreadDemo(“T2〞);

ThreadDemothread3=newThreadDemo(“T3〞);

thread1.start();

thread2.start();

thread3.start();

10.编写程序,在屏幕上显示带标题的窗口,并添加一个按钮。

当用户单击按钮时,完毕程序。

〔窗体编程〕

importjavax.swing.*;

importjava.awt.event.*;

publicclassButtonEventDemoextendsJPanelimplementsActionListener{

protecteduttonb1;

//声明一个按钮对象

publicButtonEventDemo(){//构造方法

ImageIconButtonIcon=newImageIcon("

images/green.png"

//创建按钮的图标对象

b1=newutton("

退出按钮"

ButtonIcon);

//生成按钮对象

b1.setMnemonic(KeyEvent.VK_E);

//设置b1的助记符是Alt+E

b1.setToolTipText("

这是退出按钮。

//设置按钮提示条

this.add(b1);

//往面板对象中加载按钮

b1.addActionListener(this);

//本类对象注册为按钮的事件监听器

publicvoidactionPerformed(ActionEvente){//按钮事件响应方法

System.exit(0);

//按b1如此退出主程序

privatestaticvoidcreateGUI(){//创建窗体

JFrame.setDefaultLookAndFeelDecorated(true);

//设置java隐含观感

JFrameframe=newJFrame("

按钮测试"

//生成应用程序主窗体

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//设置关闭时隐含操作

ButtonEventDemoCPane=newButtonEventDemo();

//生成主类对象--面板

CPane.setOpaque(true);

//面板要求不透明

frame.setContentPane(CPane);

//设置主类对象为主窗体的内容面板

frame.pack();

//主窗体紧缩显示

frame.setVisible(true);

//设置主窗体可见

publicstaticvoidmain(String[]args){//将createGUI〔〕列入线程

javax.swing.SwingUtilities.invokeLater(newRunnable(){

createGUI();

});

12、定义一个表示学生信息的类Student,要求如下:

〔有关类的编程〕

〔1〕类Student的成员变量:

sNO 表示学号;

sName表示某某;

sSex表示性别;

sAge表示年龄;

sJava:

表示Java课程成绩。

〔2〕类Student带参数的构造方法:

在构造方法中通过形参完成对成员变量的赋值操作。

〔3〕类Student的方法成员:

getNo〔〕:

获得学号;

getName〔〕:

获得某某;

getSex〔〕:

获得性别;

getAge〔〕获得年龄;

getJava〔〕:

获得Java课程成绩

(4)根据类Student的定义,创建五个该类的对象,输出每个学生的信息,计算并输出这五个学生Java语言成绩的平均值,以与计算并输出他们Java语言成绩的最大值和最小值。

//PragrammenameStudent;

publicclassStudent{

StringsNO,sName,sSex;

intsAge,sJava;

publicStudent(StringXH,StringXM,StringXB,intNL,intXF){

super();

sNO=XH;

sName=XM;

sSex=XB;

sAge=NL;

sJava=XF;

publicStringgetNO(){

returnsNO;

publicStringgetName(){

returnsName;

publicStringgetSex(){

returnsSex;

publicintgetAge(){

returnsAge;

publicintgetJava(){

returnsJava;

Student[]st=newStudent[5];

st[0]=newStudent("

09zc01"

"

X三"

男"

19,94);

st[1]=newStudent("

09zc02"

李四"

20,85);

st[2]=newStudent("

09zc03"

王五"

女"

18,96);

st[3]=newStudent("

09zc04"

赵六"

17,90);

st[4]=newStudent("

09zc05"

杨七"

21,88);

intmax=0,min=100,sum=0;

学生信息:

for(inti=0;

st.length;

if(st[i].sJava<

min)

min=st[i].sJava;

if(st[i].sJava>

max)

max=st[i].sJava;

sum=sum+st[i].sJava;

Syste

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

当前位置:首页 > 初中教育 > 学科竞赛

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

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