下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java语言程序设计(20软工、20统计大数据)学习通超星期末考试章节答案2024年3.[其它]定义一个方法求两个整数的最大公约数,调用该方法求某两个整数的最大公约数和最小公倍数。
答案:publicclassTest{publicstaticvoidmain(String[]args){intm=8,n=12;intg=GreatestCommon(m,n);System.out.println(m+"和"+n+"的最大公约数是"+g);intl=LeastestCommon(m,n);
System.out.println(m+"和"+n+"的最小公倍数是"+l);}publicstatic
int
GreatestCommon(intm,intn)//注意加static{intmin=0;if(m=1;i--)//俩个数的最大公约数最大是二者之中的较小数
{
if(m%i==0&n%i==0)
returni;
}
return1;}publicstatic
int
LeastestCommon(intm,intn)//注意加static{intmax=0;if(m>n)//利用if结构找出m、n中的较大值
max=m;else
max=n;
for(inti=max;i<=m*n;i++)//俩个数的最小公倍数最大是二者之积
{
if(i%m==0&i%n==0)
returni;
}
returnm*n;}}2.[其它]编程:定义一个方法判断某一个整数是否是素数。调用该方法输出1到100之间的所有素数。
答案:publicclassTest{publicstaticvoidmain(String[]args){for(inti=2;i<=100;i++)
{
if(isPrime(i))//调用isPrime()判断i是否是素数。如是则输出
System.out.println(i);
}}publicstatic
boolean
isPrime(intn)//注意加static{
for(inti=2;i1.[其它]编程:首先定义一个求n!的方法。然后调用该方法求某个数的阶乘,如求5!。
答案:publicclassTest{publicstaticvoidmain(String[]args){intx=5;intj=jieCheng(x);//调用求阶乘的方法求5!System.out.println(j);}publicstatic
intjieCheng(intn)//注意加static{intjc=1;//初始化for(inti=1;i<=n;i++){jc=jc*i;}returnjc;}}1.[其它]有六位选手参加歌唱比赛,有五个评委。每个选手的成绩计算方法是:去掉一个最高分去掉,一个最低分后,计算平均分作为该选手的最终得分。输出每位选手的最终得分情况,并按由高分到低分的顺序给选手进行排名。
答案:import
java.util.Scanner;publicclassTest{publicstaticvoidmain(String[]args){double[]xuanShou=newdouble[3];//xuanShou保存每个选手的成绩for(inti=0;ix[i])
{min=x[i];
}
}
returnmin;
}
publicstaticvoidMaoPaoPaiXu(double[]x)//冒泡排序:从高分到低分
{
for(inti=1;i2.[其它]一、定义学生类,要求:(1)属性:姓名、年龄(2)无参构造方法和带参构造方法(3)获取姓名、修改姓名的方法(4)获取年龄、修改年龄的方法二、定义学生类的测试类,对学生类中的方法逐一进行测试。创建学生对象并调用获取姓名、修改姓名的方法
答案:classStudent{privateStringname;privateintage;publicStudent()//无参构造方法{name="张三";age=0;}publicStudent(Stringname,intage){=name;this.age=age;}
publicStringgetName()
{
returnname;
}
publicvoidsetName(Stringname)
{
=name;
}
publicStringgetAge()
{
returnage;
}
publicvoidsetAge(intage)
{
this.age=age;
}}publicclassTestStudent{publicstaticvoidmain(String[]args){Studentt=newStudent("李四",18);//创建一个学生对象System.out.println(t.getName());//调用getName()方法获得学生的姓名并输出t.setAge(20);//修改t的年龄为20System.out.println(t.getAge());}}1.[其它]一、定义一个三角形类,具体要求:(1)属性:三角形的三条边
(2)无参构造方法(3)带参构造方法(4)求三角形的周长(5)求三角形的面积(用海伦公式)二、定义三角形类的测试类,对三角形中的方法一一测试
答案:classTriangle{privatedoublea,b,c;//三角形的三条边publicTriangle()//无参构造方法{a=0;b=0;c=0;}publicTriangle(doublea,doubleb,doublec){this.a=a;this.b=b;this.c=c;}
publicdoublegetLength()
{
returna+b+c;
}
publicdoublegetArea()
{
doublel=(a+b+c)/2;
doublearea=Math.sqrt(l*(l-a)*(l-b)*(l-c));
returnl;
}}publicclassTestTriangle{publicstaticvoidmain(String[]args){Trianglet=newTriangle(3,4,5);//创建一个三角形对象doublelength=t.getLength();//调用求周长的方法求出三角形的周长System.out.println(length);doublearea=t.getArea();//调用求面积的方法求出三角形的面积System.out.println(area);}}1.[其它]定义一个点类,求两个点之间的距离。并测试
答案:publicclassTestPoint{publicstaticvoidmain(String[]args){Pointp1=newPoint(1,1,1);//创建点p1对象Pointp2=newPoint(2,2,1);//创建点p2对象doubledis=p1.distance(p2);//调用的哪一个方法System.out.println(dis);doubledist=Point.distance(p1,p2);//注意调用方式,类名.方法调用System.out.println(dist);}}classPoint{
privatedoublex;
privatedoubley;
privatedoublez;
publicPoint()
{
x=0;
y=0;
z=0;
}
publicPoint(doublex,doubley,doublez)
{
this.x=x;
this.y=y;
this.z=z;
}
publicdoubledistance(Pointp)//求两点之间的距离
{
returnMath.sqrt((this.x-p.x)*(this.x-p.x)+(this.y-p.y)*(this.y-p.y)+(this.z-p.z)*(this.z-p.z));
}
publicstaticdoubledistance(Pointp1,Pointp2)//求两点之间的距离(方法重载),注意static
{
returnMath.sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y)+(p1.z-p2.z)*(p1.z-p2.z));
}
}2.[其它]已知:自定义类classMyChar{charc;}和Comparable接口publicinterfaceComparable
{
publicabstractintcompareTo(Objectother);}
当调用pareTo(y)时:
x小于y:返回一个负数;
x等于y:返回0;
x大于y:返回一个正数。请用MyChar类实现Comparable接口并进行测试
答案:classMyCharimplementsComparable{//声明实现接口charc;publicMyChar(charc){this.c=c;}publicMyChar(){}public
intcompareTo(Objectother)//重写接口的抽象方法{MyCharm=newMyChar();if(otherinstanceofMyChar){m=(MyChar)other;//注意一定要强制类型转换为MyChar,因为Object没有c属性}returnthis.c-m.c;}publicstaticvoidmain(String[]args){MyCharm1=newMyChar('a');MyCharm2=newMyChar('b');intd=pareTo(m2);if(d>0)
System.out.println(m1比m2大);elseif(d==0)System.out.println(m1与m2一样大);else
System.out.println(m1比m2小);}}1.[其它]定义一个USB接口,接口中包含read()、write()两个抽象方法,并分别定义键盘、鼠标、U盘三个类实现USB接口,并用多态的形式实现测试。
答案:publicclassTestUSB{publicstaticvoidmain(String[]args){USBu1=newKeyBoard();//向上转型成接口类型USBu2=newMouse();//向上转型成接口类型USBu3=newUpan();//向上转型成接口类型u1.read();//隐藏u1、u2、u3的类型,u1\u2\u3的read方法呈现多态u1.write();u2.read();u2.write();u3.read();u3.write();}}interfaceUSB{publicabstractvoidread();publicabstractvoidwrite();}
classKeyBoardimplementsUSB
{
public
voidread()
{
System.out.println("KeyBoardisreading");
}public
voidwrite(){System.out.println("KeyBoardiswriting");}
}
classMouseimplementsUSB
{
public
voidread()
{
System.out.println("Mouseisreading");
}public
voidwrite(){System.out.println("Mouseiswriting");}
}
classUpanimplementsUSB
{
public
voidread()
{
System.out.println("Upanisreading");
}public
voidwrite(){System.out.println("Upaniswriting");}
}Java文件对大小写敏感
答案:对编译成功后生产的Java字节码文件的文件名的后缀是_________________
答案:.classJava源文件的文件名的后缀是_________________
答案:.javaJava文件的文件名必须和___________类的类名一致
答案:公共;public下列main方法的书写哪个是正确的?
答案:publicstaticvoidmain(String[]args)组成Java程序的基本单元是什么
答案:类要运行Java程序,必须要安装下列哪个软件?
答案:JDK下列程序正确的运行结果是publicclasstest{
publicstaticvoidmain(String[]args)
{
inti=1,j=2;
System.out.println("i="+i+";j="+j);
}}
答案:i=1;j=2下列程序中能编译通过的是
答案:publicclasstest{
publicstaticvoidmain(String[]args)
{
for(inti=0;i<5;i++)
{
System.out.println("i="+i);}
for(inti=10;i<5;i--)
{
System.out.println("i="+i);}
}}下列变量声明语句中错误的是
答案:c='c';下列赋值运算错误的是
答案:byteb=128;下列标识符正确的是
答案:_hello已知银行整存整取存款不同期限的月息利率分别为:0.33%期限1年;0.36%期限2年;0.39%期限3年;0.45%期限5年;0.54%期限8年要求输入存款的本金和期限,求到期时能从银行得到的利息与本金的合计。请把下面的程序补充完整importjava.util._____________;classCunKuan{publicstaticvoidmain(String[]args){
intyear;//存款期限
doublerate=0,total;//rate:月利率,total:本息合计
intmoney;//money:本金
System.out.println("请输入本金");
Scannersc=newScanner(System.in);
money=sc.nextInt();//通过nextInt()方法从键盘输入本金数
System.out.println("请输入存款年限");
year=___________.nextInt();//通过nextInt()方法从键盘输入存款年限
switch(________){
case1:rate=0.0033;_________;//期限一年的月利率
case2:rate=0.0036;break;//期限一年的月利率
case3:rate=0.0039;break;//期限一年的月利率
case5:rate=0.0045;break;//期限一年的月利率
case8:rate=0.0054;break;//期限一年的月利率
default:System.out.println("年限输入错误!");}total=_______*(1+year*12*rate);//存款到期后,根据利率计算本息合计System.out.println("到期后本利合计为"+_________+"元");}}
答案:Scanner;sc;year;break;money;total下列是定义一个求整型数组最大值的方法,请把程序补充完整public_________
arrayMax(_________
a){
intmax=_____________;
for(inti=0;i<____________;i++)
{
if(max______
a[i])
max=a[i];
}
_________
max;}
答案:int;staticint;int[];int[];a[0];a.length;<;<=;returnStrings="张三、李四、王五";s.indexOf("李四")的值是
答案:3要从字符串Strings="helloworld!";中截取字符串“world!”,下列方法正确的是
答案:s.substring(5)求数组a的长度,下列正确的是
答案:a.length定义一个长度为10的字符数组,下列定义正确的是
答案:char[]a=newchar[10]定义一个学生类,属性有:姓名,年龄;请完成程序填空:classStudent{
privateStringname;//姓名
privateint
age;//年龄
//无参构造方法:参数为空,方法体也为空
public
________________(){
}
//带参构造方法
public
Student(Stringname,intage){
_______________________;//给姓名赋值
_______________________;//给年龄赋值
}
//方法:修改某个学生的年龄
public
_______
setAge(intage)
{
________________;
}
//方法:获取某个学生对象的年龄
public
______
getAge()
{
________
age;
}}//测试学生类
publicclassTestStudent{
publicstaticvoid_________(String[]args)
{
//创建一个名叫“张三”,年龄为21的学生对象
Students1=_________
Student("张三",21);
//把s1的年龄修改为22
___________________________;//输出s1的年龄System.out.println(________________);
}}
答案:Student;=name;=name;=name;;this.age=age;this.age=age;this.age=age;this.age=age;;void;this.age=age;this.age=age;this.age=age;this.age=age;;int;return;main;new;(10)s1.setAge(22);s1.setAge(22);s1.setAge(22);s1.setAge(22);s1.setAge(22);;(11)s1.getAge();s1.getAge();s1.getAge();s1.getAge();s1.getAge();数据封装就是将一组数据和对该数据的操作结合到一起而形成的一种抽象的数据类型,该数据类型称为
答案:类AB类中有一个无参数无返回值的方法名为method的方法,使用类名就可以调用它,即AB.method(),则该方法的方法头应该是下面哪种形式
答案:staticvoidmethod()某个类中的成员变量只能被同一个包中的类访问,下面的哪些修饰符可以获得所要的访问控制
答案:没有修饰符对于构造方法,下列叙述不正确的是
答案:每个类中都必须由程序员定义一个构造方法并编写方法代码。在类头中,不可能用到的关键字是
答案:private下列方法定义中正确的是
答案:publicdoubleadd(doublex,doubley){returnx+y;}classPerson{
Stringname;
intage;
Person()
{
name="Tom";
age=100;
}
Person(Strings,inta)
{
name=s;
age=a;
}}下列创建Person类的对象的语句,正确的是
答案:Personp=newPerson("Jerry",100);1.[其它]请编写一个Java程序,利用多线程模拟多个窗口同时售票的过程。
答案:classTickeDemoimplementsRunnable{//通过实现Runnable接口实现多线程privateintticket=10;publicvoidrun()//重写Runnable中的run方法{while(true){synchronized(this)//保持同步,使得同时只能有一个窗口卖同一张票{if(ticket>0){//通过sleep()方法模拟出票时间try{Thread.sleep(1000);}catch(InterruptedExceptione){e.printStackTrace();}System.out.println(Thread.currentThread().getName()+"正在出售第"+ticket+"张票");
ticket--;}}}}}publicclassSellTicke{publicstaticvoidmain(String[]args){TickeDemoselltick=newTickeDemo();Threadt1=newThread(selltick,"窗口1");//创建一个线程Threadt2=newThread(sellti
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论