




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
面試必備100道經(jīng)典Java基礎(chǔ)題
1.完畢數(shù)組int[]a={100,40,60,87,
34,11,56,0}的迅速排序、冒泡排序;
迅速排序
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
int[]a=newint[]{100,4C,60,87,34,11,56,0};
System.outprintln("未鋅蘇之前的數(shù)軸是:");
print(a);
System.ouf.println("排序之后的數(shù)據(jù)是:");
sorf(a,0,a.length-1);
print(a);
〃打印措施
publicstaticvoidprint(int[]b){
for(inti=0;i<b.length;i++){
System.oi/tprint(b[i]+"
)
System.outprintln();
}
〃排序措施
staticvoidsort(int[]a,inthigh){
if(low>=high)return;//lcw示不小于high,則直接返回
lf((high-low)==1){〃假如只有兩個數(shù)字,則直接比
if(a[0]>a[1])
swap(a,0,1);
return;
)
intpivot=a[low];〃取第種數(shù)作為中間數(shù)
intleft=low+1;
intright=high;
while(left<right){
〃從左邊開始找
while(left<right&&left<=high*,如左不不小于右則一直循環(huán)
if(a[left]>pivot)break;
left++;〃左卜標(biāo)往右邊走?點
}
〃從右邊開始找
while(left<=right&&right>low){〃假如左不小于右則一直循環(huán)
if(a[right]<=pivot)
break;
right”;/日下標(biāo)往左走??點
)
if(left<right)〃假如還沒有找完,則互換數(shù)字
svuap(a,right,left);
)
swap(a,low,right);
so/7(a,low,right);
sor/(a,right+1,high);
}
〃調(diào)位措施
privatestaticvoidswap(int[]array,inti,intj){
inttemp;
temp=array[i];
array[i]=array。];
array[j]=temp;
)
打印成果為:
未排序之前的數(shù)據(jù)是:
1004060873411560
排序2后H勺數(shù)據(jù)是:
0113440566087100
冒泡排序
實現(xiàn)代碼:
publicclassTest002{
publicstaticvoidmain(String[]args){
int[]arr={100,40,60,87,34,11,56,0};//定義數(shù)組
System.。川.printin,未排序之前的數(shù)據(jù)是:");
maopaoPrint(arr);
System.ouf.println();
System.?!?printing排序之后的數(shù)據(jù)是:");
maopaoSort(arry,
}
〃排序措施
publicstaticvoidmaopaoSort(int[]arrys){
〃定義臨時變量temp
inttemp=0;
〃用i表達(dá)下標(biāo),遍歷數(shù)組
for(intj=0;j<arrys.length;j++){
〃對于每一種數(shù)組元素,從。到尚未排序的最大下標(biāo),總是把最大的數(shù)字放在后邊
for(intk=0;k<arrys.length-j-1;k++){
if(arrys[k]>arrys[k+1){〃判斷H前數(shù)字、?背面數(shù)字的大小
temp=arrys[k];
arrys[k]=arrys[k+1];
arrys[k+1]=temp;
)
)
)
maopaoPrint(arrys);//-IJ叩就出
)
〃打印措施
publicstaticvoidmaopaoPrint(int[]l){
for(inti=0;i<l.length;i++){
System.ouf.print(電]〃從小至十大H勺輸出
}
}
打印成果為:
未排序之前的數(shù)據(jù)是:
1004060873411560
排序之后的數(shù)據(jù)是:
0113440566087100
2.采用折半查找歐I算法,在數(shù)組中查關(guān)
到某個數(shù);
實現(xiàn)代碼:
importjava.util.Scanner;
publicclassTest003{
publicstaticintMax=20;
//數(shù)據(jù)數(shù)組源
publicstaticintdata\]={12,16,19,22,25,32,39,39,48,55,57,58,
63,68,69,70,78,84,88,90,97);
〃計數(shù)罌
publicstaticintcount=1;
publicstaticvoidmain(String[]args){
System.ouf.printlnf?請說'您要查找而數(shù)字:");
Scannersc=newScanner(System./n);
intKeyValue=sc.nextlnt();
〃調(diào)用折半查找
if(Search(KeyValue)){
〃輸出查找次數(shù)
System,outprintln("共查找了"+count+"次");
}else{
〃輸出沒有找到數(shù)據(jù)
System.outprintln("抱歉,數(shù)據(jù)數(shù)組源中找不到您輸入的數(shù)字");
)
}
〃折半杳找法
publicstaticbooleanSesrch(intk){
intleft=0;//左邊界變量
intright=Max-1;//右邊界變量
intmiddle;〃中位金變量
while(left<=right){
middle=(left+right)/2;
if(k<da冏middle]){
right=middle?1W查找前半段
}elseif(k>da冏middle]){
left=middle+1力查找后半段
}elseif(k==dafa[middle]){
System.ol/fprintln("Data[>^+middle+"]="+dafafmiddle]);
returntrue;
}
count++;
)
returnfalse;
3.輸入一種字符串,其中包括數(shù)字、特
殊符號(像:¥、&、(、>等)、大小寫
字母等,然后輸出每個字符串或符號的
ASCH碼附和;例如:輸入
“@#$%A&*():T,則打印出643。
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
System.ouf.println("請輸入一種字符串:
Scannersc=newScanner(System./n);
Stringstr=sc.nextLine():
intsum=0;
for(inti=0;i<str.length();i++){
sum=sum+str.charAtii);
)
System.outprintin("您輸入的字符串每個字節(jié)相加的和為:「sum);
)
4.將一種數(shù)組中值=0的項去掉,將不為
0時值存入一種新時數(shù)組
例如:
inta加{0,1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
生成的新數(shù)組為:
intb[]={1,3,4,5,6,6,5,47,6,7,5}
實現(xiàn)代碼:
importjava.util.*;
publicclassTestOOI{
publicstaticvoidmain(String[]args){
inta[]={0,1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
Listdntegeolist=newArrayList<.lnteger^();
for(inti=O;i<a.length;i++){
if(a[i]!=O){
list.add(a[i]);
}
}
intb[]=newint[list.size()];
for(inti=0;i<list.size();i++){
b[i]=list.get(i);
}
System.?!?printing原數(shù)殂為:");
for(inti=O;i<a.length;i++){
System.ouAprint(a[i]+M");
}
System.our.println();
System.outprintln《去掉值為0H勺項之后為:");
for(inti:b){
System.outprint(i+"");
}
5.定義10個長度的Student數(shù)組,將
10個Student對象的年齡所有加1,
然后把10個Student對象的詳細(xì)信息
逐行打印出來(數(shù)組和ArrayList實現(xiàn))
實現(xiàn)代碼:
性一號類:
publicclassStudent{
publicStringname;
publicStringsex;
publicintage;
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
=name;
)
publicStringgetSex(){
returnsex;
)
publicvoidsetSex(Stringsex){
this.sex=sex;
}
publicintgetAge(){
returnage;
)
publicvoidsetAge(intage){
this.age=age;
}
publicStudent(Stringname,Stringsex,intage){
superO:
=name;
this.sex=sex;
this.age=age;
)
}
第二個類:
importjava.util.ArrayList;
importjava.util.List;
publicclassTestOOI{
staticStudent[]s=newSludent[10];
intk=1;
publicstaticvoidmain(String[]args){
List<Student>li=newA-rayList<Student>();
for(inti=0;i<10;i++){
li.add(newStudent("zhangsan,,+i,"^",20));
}
for(inti=0;i<10;i++){
(li.get(i).age)++;
)
for(inti=0;i<10;i++){
System.oyAprintln(li.get(i).getName()+""+li.get(i).getSex()+""+li.get(i).getAge());
)
}
6.有工人,農(nóng)民,教師,科學(xué)家,服務(wù)生,其
中,工人,農(nóng)民,服務(wù)生只有基本工資.教師
除基本工資外,尚有課酬(元/天),科學(xué)家
除基本工資外,尚有年終獎,請你寫出有
關(guān)類,將多種類型的員工的整年工資打
印出來
實現(xiàn)代碼:(共有7個類)
同一種類:
packagecom.softeem.zy006;
r
*定義一種人的接口,以供實現(xiàn)
7
publicinterfacePeople{
publicdoublenum();
k二個類:
packagecom.softeem.zy006;
r
.工人類
*/
publicclassWorkerimplementsPeople{
privatedoublemontherSalary;
publicWorker(doublemontherSalary){
super();
this.montherSalary=montherSalary;
}
publicdoublenum(){
returngetMontherSalaryO*12;
)
publicdoublegetMontherSalaryO{
returnmontherSalary;
}
publicvoidsetMontherSaary(doublemontherSalary){
this.montherSalary=montherSalary;
那三個類:
packagecom.softeem.zy006;
r*
*農(nóng)民類
*/
publicclassPeasantimplementsPeople{
privatedoublemontherSslary;
publicPeasant(doublemontherSalary){
super();
this.montherSalary=montherSalary;
)
publicdoublegetMontherSalary(){
returnmontherSalary;
}
publicvoidsetMontherSaary(doublemontherSalary){
this.montherSalary=montherSalary;
)
publicdoublenum(){
returngetMontherSalary()*12;
}
第四個類:
packagecom.softeem.zy006;
*教師類
7
publicclassTeacherimplementsPeople{
privatedoublemontherSalary;
privatedoubledaySalary;
publicTeacher(doublemontherSalary,doubledaySalary){
super();
this.montherSalary=montherSalary;
this.daySalary=daySalary;
)
publicdoublenum(){
returngetMontherSalary()*12+getDaySalary()*365;
)
publicdoublegetMontherSalary(){
returnmontherSalary;
)
publicvoidsetMontherSaary(doublemontherSalary){
this.montherSalary=montherSalary;
}
publicdoublegetDaySalary(){
returndaySalary;
}
publicvoidsetDaySalary(doubledaySalary){
this.daySalary=daySalary;
)
)
除五個類:
packagecom.softeem.zy006;
卜
,科學(xué)家類
*/
publicclassScientistimplementsPeople{
privatedoublemontherSalary;
privatedoubleprojectsalary;
publicScientist(doublemontherSalary,doubleprojectsalary){
super();
this.montherSalary=montherSalary;
jectsalary=projectsalary;
}
publicdoublenum(){
returngetMontherSalary()*12+getProjectSalary();
}
publicdoublegetMontherSalary(){
returnmontherSalary;
}
publicvoidsetMontherSaary(doublemontherSalary){
this.montherSalary=montherSalary;
)
publicdoublegetProjectSalary(){
returnprojectsalary;
}
publicvoidsetProjectSalsry(doubleprojectsalary){
jectsalary=projectsalary;
)
)
第六個類:
packagecom.softeem.zy006;
廣*
*服務(wù)員類
7
publicclassWaiterimplementsPeople{
privatedoublemontherSalary;
publicWaiter(doublemontherSalary){
super();
this.montherSalary=montherSalary;
)
publicdoublenum(){
returngetMontherSalary()*12;
}
publicdoublegetMontherSalary(){
returnmontherSalary;
)
publicvoidsetMontherSaary(doublemontherSalary){
this.montherSalary=montherSalary;
)
I
第七個類:
packagecom.softeem.zy006;
尸
?測試類
7
publicclassTest{
publicstaticvoidmain(String[]args){
Testa=newTest();
Workerw=newWorker(IOOO);
System.ouf.println("工人由年薪為:"+w.num()+"元");
Peasantp=newPeasant(2500);
System.ouf.println("農(nóng)民向年薪為:”+p.num()+"元)
Teachert=newTeacher(4500,50);
System.?!?printin("教師內(nèi)年薪為:"+t.num()+"元】
Scientiste=newScientist(10500,30000);
System.ou±println("科學(xué)家『'J年薪區(qū):"+e.num()+"元");
Waitery=newWaiter(3400);
System.?!?printing服務(wù)生的年薪為:"+y.num());
}
打印成果為:
工人的年薪為:12023.0元
農(nóng)民的年薪為:30000.0元
教師的年薪為:/2250.。元
科學(xué)家的年薪為:156000.。元
服務(wù)生的年薪為:40800.0
7,創(chuàng)立一種復(fù)數(shù)類complex,對復(fù)數(shù)
進(jìn)行數(shù)學(xué)運算,復(fù)數(shù)具有如下格式:
RealPart+lmaginaryPart*1
其中,I為一1的平方根。
規(guī)定如下:
(1)運用浮點變量表達(dá)此類的私有數(shù)據(jù)。提供兩個構(gòu)造措施,一種用于此類申明時對象
的初始化;一種為帶默認(rèn)值得無參構(gòu)造措施。
(2)提供兩復(fù)數(shù)加、減、乘的運算措施。
(3)按格式(a,b)打印復(fù)數(shù)。其中a為實部,b為虛部。
實現(xiàn)代碼:
packagecom.softeem.zy007;
r
.創(chuàng)立一種復(fù)數(shù)類complex,對復(fù)數(shù)進(jìn)行數(shù)學(xué)運算,復(fù)數(shù)具有如下格式:RealPart+lmaginaryParCI其
中,I為一1的平方根。
.規(guī)定如下:(1)運用浮點變量表達(dá)此類的私有數(shù)據(jù)。提供兩個構(gòu)造措施,一種用于此類申明時對象的
初始化:一種為帶默認(rèn)值得無參構(gòu)造措施.
*(2)提供兩復(fù)數(shù)加、減、乘H勺運算措施。(3)按格式(a,b)打印復(fù)數(shù)。其中a為實部,b為虛部。
7
publicclassComplexNumberimplementsCloneable{
r復(fù)數(shù)的實部7
privatedoublerealPart;
r復(fù)數(shù)mj虛部7
privatedoubleimaginaryPart;
/**默認(rèn)構(gòu)造函數(shù)7
publicComplexNumber(){
this.realPart=0.0;
this.imaginaryPart=0.0;
?構(gòu)造函數(shù)
*
*@parama
*實部
*@paramb
*虛部
7
publicComplGxNumbGr{doublea,doubleb){
this.realPart=a;
this.imaginaryPart=b;
}
?復(fù)數(shù)的加法運算。c=a+b的運算法則是:c.實部=a.實部+b.實部;c.虛部=a.虛部+b.虛部
,@paramaComNum
*加數(shù)
*@return
7
publicComplexNumberadd(ComplexNumberaComNum){
if(aComNum==null){
System.err.println("對象不可以為null!");
returnnewComplexKumber();
)
returnnewComplexNumber(this.realPart+aComNum.getRealPart(),
this.imaginaryPart+aComNum.getlmaginaryPart());
)
.復(fù)數(shù)的減法運算。c=ab的運算法則是:c.實部=a.實部-b.實部;c.虛部=a.虛部-b.虛部
★
*@paramaComNum
?減數(shù)
,@return
7
publicComplexNumberdecrease(ComplexNumberaComNum){
if(aComNum==null){
System.e/r.println("對象不可以為null!");
returnnewComplexNumber。;
)
returnnewComplexNumber(this.realPart-aComNum.getRealPart(),
this.imaginaryPart-aComNum.getlmaginaryPart());
r
,復(fù)數(shù)的乘法運算。c=a"b的運算法則是:c.實部=a.實部*b.實部-a.虛部*b.虛部;c.虛部=a.虛
部*
*b.實部+a.實部*b.虛部;
*
*@paramaComNum
*乘數(shù)
*@return
7
publicComplexNumbermultiply(ComplexNumberaComNum){
if(aComNum==null){
System.e/r.println("對象不可以為null!");
returnnewComplexNumber。;
)
doublenewReal=this.realPart*aComNum.realPart-this.imaginaryPart
*aComNum.imagin&ryPart;
doublenewlmaginary=this.realPart*aComNum.imaginar/Part
+this.imaginaryPart*aComNum.realPart;
ComplexNumberresult=newComplexNumber(newReal,newlmaginary);
returnresult;
)
*復(fù)數(shù)的除法運算。c=a/b的運算法則是:c.實部=(a.實部*b.實部+a.虛部*b.虛部)/(b.實部
一b.實部+b.虛部*b.虛部);c.虛部=(a,虛部*b.實部-a.實部*b.虛部)/(b.實部*b.實部+
*b.虛部*b.虛部);
*
*@paramaComNum
?除數(shù)
*@return
7
publicComplexNumberdi</ide(ComplexNumberaComNum){
if(aComNum==null){
System.err.println("對象不可以為null!");
returnnewComplexNumber();
)
if((aComNum.getRealPart()==0)&&(aComNum.getlmaginaryPart()==0)){
System.e/v.println("除數(shù)不可以%0!");
returnnewComplexNumber。;
}
doubletemp=aComNum.g?tRGalPart()*aComNum.getRoalPartO
+aComNum.getlmaginaryPartO,aComNum.getlmaginaryPart();
doublecrealpart=(this.realPart*aComNum.getRealPart()+this.imaginaryPart
*aComNum.getlmaginaryPartO)
/temp;
doublecimaginaryPart=(this.imaginaryPart*aComNum.getRealPart()-this.realPart
*aComNum.getlmaginaryPartO)
/temp;
returnnewComplexNumber(crealpart,cimaginaryPart);
/**
?將?種復(fù)數(shù)顯示為字符串
*/
publicStringtoString(){
returnthis.realPart+"+"+this.imaginaryPart+"i";
)
?比較一種對象與否和這個復(fù)數(shù)對象的值相等
7
publicbooleanequals(Objectobj){
if(obj==null){
returnfalse;
}
//首先判斷a是不是一種且數(shù)對象,instances關(guān)鍵字是用來判斷對象的類型。
if(objinstanceofComplexNumber){
〃假如a是復(fù)數(shù)對象,需要將它強制類型轉(zhuǎn)換成復(fù)數(shù)對象,才能調(diào)用梵數(shù)類提供的措施。
ComplexNumberb=(ComplexNumber)obj;
if((this.realPart==b.getRealPart())
&&(this.imaginar/Part==b.getlmaginaryPart())){
returntrue;
}else{
returnfalse;
}
}else{
returnfalse;
)
)
*獲得該復(fù)數(shù)對象/、Jhash8de
7
publicinthashCode(){
//假如兩個復(fù)數(shù)對象是equalsH勺,那么它們的hashCode也必須相似。
//兩個值相等的復(fù)數(shù)對象通過toString()措施得到的輸出字符串是同樣的,
//于是,可以把得到的字符串H勺hashCode當(dāng)作復(fù)數(shù)對象的hashCode
returnthis.toString().hashCode();
}
/**
?根據(jù)既有對象克隆?種新對象
7
publicObjectclone(){
//假如你要使自定義的類可以被clone,就必須實現(xiàn)Cloneable接口并且重寫它的clone。措施.
〃假如你僅僅重寫了clone措施向沒有在類II勺申明中添加實現(xiàn)cloneable接口,調(diào)用clone措施時將
會出現(xiàn)
//CloneNotSupportedException異常,讀者可以試試。
try(
ComplexNumbernewObject=(ComplexNumber)super.clone();
newObject.setRealPart(this.realPart);
newObject.setlmaginaryPart(this.imaginaryPart);
returnnewObject;
}catch(CloneNotSupportedExceptione){
〃〃假如沒有實現(xiàn)Cloneable接口,拋出異常
e.printStackTrace();
returnnull;
}
}
/**
?@return返回imaginaryParto
7
publicdoublegetlmaginaryPart(){
returnimaginaryPart;
)
*(aiparamimaginaryPart
*要設(shè)苴的imaginayPart。
7
publicvoidsetlmaginaryPart(doubleimaginaryPart){
this.imaginaryPart=imaginaryPart;
)
L
*@return返回realParto
7
publicdoublegetRealPac(){
returnrealPart;
*@paramrealPart
*要設(shè)置的realParto
7
publicvoidsetRealPart(doublerealPart){
this.realPart=realPart;
)
publicstaticvoidmain(String[]args)throwsCloneNotSupportedException{
ComplexNumbera=newComplexNumber(3,5);
ComplexNumberb=newComplexNumber(2,4);
System.OL/tprintln("ComplexNumbera:"+a.toStringO);
Systemoutprintln("ComplexNumberb-"+btoString());
System.our.println("(a+b)="+a.add(b).toString());
System.ot/Aprintln("(a-b)="+a.decrease(b).toString());
System.OL/fprintln("(a*b)="+a.multiply(b).toString());
System.ouAprintln("(a/b)="+a.divide(b).toString());
)
8,實現(xiàn)圓類circle,包具有關(guān)的組員變
量和組員措施。從圓類派生出圓柱類
cylindero根據(jù)建立的兩個類,從鍵盤
輸入5個圓的半徑,5個圓柱的I半徑和
高度,并分別是輸出5個圓區(qū)I面積,5
個圓柱的體積
實現(xiàn)代碼:(共有三個類)
k限「
packagecom.softeem.zy008;
publicclassCircle{
privatestaticfinalfloatf=(float)Math.P/;
/**
?計算出圓的面積
7
publicfloatgetArea(floatrr){
floatarea=f*rr*rr;
returnarea;
)
,二個類:
packagecom.softeem.zy008;
publicclassCylinderextendsCircle{
publicfloatgetVolume(floatrr,floatg){
floatarea=super.getArea(rr);
floatvolume=area*g;
returnvolume;
}
性三個類(測試類):
packagecom.softeem.zy008;
importjava.util.Scanner;
publicclassTest{
publicstaticvoidmain(String[]args){
Testt=newTest();
t.Demo001();
System.ouAprintln();
t.Demo002();
)
publicvoidDemo001(){
System.ouf.printlnf計麻圓的面積:”);
System.outprintlnC請輸入5個圓的半徑(一行寫一種半徑):");
float[]f=newfloat[5];
for(Inti=0;i<=4;i++)[
Scannersc=newScsnner(System./n);
f(i]=sc.nextFloat();
}
for(inti=0;i<f.length;i++){
Circlec=newCircle();
floatarea=c.getArea;f[i]);
System.oi/tprintln("半經(jīng)務(wù)*+f[i]+叩勺圓的面積為:"+area);
publicvoidDemo002(){
System.ouf.printlnC接下來是計算圓柱的體積:");
System.oSprintlnC?請先輸入5個圓柱口勺半徑(一行寫一種):");
floatf](1=newfloat[5];
for(inti=0;i<=4;i++)[
Scannersc=newScanner(System./n);
f1[i]=sc.nextFloat();
)
System.?!?printin("請再分別輸入5個圓柱對應(yīng)的高度(一行寫一種
float[]12=newfloat[5];
for(inti=0;i4;i++)(
Scannersc=newScsnner(System./n);
f2[i]=sc.nextFloat();
}
for(inti=0;i<5;i++){
Cylinderc=newCylinder();
floatvolume=c.getVolume(f1[i],f2[i]);
System.ouf.println("半經(jīng)為31。]+”,高為"+f2[i]+"的圓柱的體積為:[volume);
)
}
9.輸入一種整數(shù),求這個整數(shù)中每位數(shù)
字相加的和
實現(xiàn)代碼:
packagecom.softeem.zy009;
importjava.util.Scanner;
r
?輸入一?種整數(shù),求這個整數(shù)中每位數(shù)字相加的和
*/
publicclassTestOOI{
publicstaticvoidmain(String[]args){
System.o”.println("請輸入一種整數(shù):");
Scannersc=newScanner(System./n);
Strings=sc.nextLine();
intsum=0;
for(inti=0;i<s.length();i++){
sum=sum+lnteaer3rse/cf(s.va/ueO/(s.charAt(i)));
)
System.outprintln("您輸入的整數(shù)是:"+s);
System.?!?printin("各位數(shù)字相加的和為:"+sum);
)
10.編寫一種java應(yīng)用程序,規(guī)定如下
(1)申明一種String類口勺變量并初始化值“HelloWorld”。
(2)用字符串類的一種措施將上面變量口勺值拆提成"Hello”和“World”兩個字符串并打印輸
出。
(3)將”Hell。”這個變量轉(zhuǎn)換成大寫、“World”轉(zhuǎn)換成小寫并打印輸出。
(4)申明一種String類的變量并初始化值“20230110”。
(5)將上面變量時值轉(zhuǎn)換成2010年1月10日的形式打印輸出。
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticfinalStringstr1="HelloWorld";
publicstaticfinalStringstr2="20230110";
publicstaticvoidmain(String[]args){
TestOOIt=newTestOO1();
t.Demo();
}
publicvoidDemo(){
String口s=sfrfsplit("");
System.outprintlnf*標(biāo)分后為:"+s[0]+"、"+s[1]);
System.o"println(s⑼+"轉(zhuǎn)換成大官之后為:"+s[0].toUpperCase());
System.ouf.println(s[1]+"轉(zhuǎn)換成小寫之后為:"+s[1].toLowerCase());
SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-dd");
System.ot/f.println(sfr2substring(0,4)+“年"+sfr2.subsMng(4,6)+"月"+sf「2.substring⑹+"曰");
)
11.求s=1+3+5+7+…直到s>2023為止
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
intsum=0;
for(inti=1;;i=i+2){
sum=sum+i;
System.ouAprintln(sum);
if(sum>2023){
break;
)
)
System."1.printing程序停止:和已經(jīng)不小于2023了");
)
12,計算s=2!+4!+8!+11!。(首先先定
義一種函數(shù),函數(shù)的功能就是求任何一
種數(shù)時階乘)
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
TestOOIt=newTestOO1();
intsum=
tgetJieCheng(2)+t.getJieCheng(2)+t.getJieCheng⑷+t.getJieCheng(8)+t.getJieCheng(11);
System.o^.println("2!+4!+8!+11!="+sum);
)
〃求任何一種數(shù)的階乘
publicintgetJieCheng(intm){
intf=1;
for(inti=1;i<=m;i++){
f=i*f;
}
returnf;
13.求200到400間,能被3整除但不
能被7整除時數(shù)的個數(shù)
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
intcount=0;
System.ouf.printlnf?能被3整除但不能被7整除的數(shù)有:”);
for(inti=200;i<=400;i++){
if(i%3==0&&i%7(=0){
System.outprint(i+"");
count++;
}
}
System.OL/f.println();
System.?!?print("能被3整除但不能被7整除H勺數(shù)的個數(shù)有"+count+"個)
)
14.求能被3整除且至少有一位數(shù)字為
5時三位數(shù)的個數(shù)
實現(xiàn)代碼:
importjava.util.ArrayList;
importjava.util.List;
publicclassTestOOI{
publicstaticvoidmain(String[]args){
intcount=0;
List<lnteger>li=newArrayList<lnteger>();
for(inti=100;i<=999;i++){
li.add(i);
}
System.ouf.printlnf?能被3整除且至少有一位數(shù)才為5的三位數(shù)行;");
for(inti=100;i<li.sizei);i++){
if(li.get(i)%3==0){
if(li.get(i).toString().substring(2).equals("5")
||li.get(i).toString().substring(1,2).equals("5")
IIli.get(0).toStrirg().substring^,1).equals(M5")){
System.ouf.print(li.get(i)+"
count++;
}
System.ouAprintln("\r\n能被3整除且至少有一位數(shù)字為5的三位數(shù)的個數(shù)有"+count+"個)
}
打印成果為:
能被3整除且至少有一位數(shù)字為5的三位數(shù)有:
225252255258285315345351354357375405435450453456459465495525552555558
585615645651654657675705735750753756759765795825852855858885915945951
954957975
能被3整除旦至少有一位數(shù)字為5的三位數(shù)的個數(shù)有49個
15.求三位奇數(shù)中,個位數(shù)字與十位數(shù)
字之和除以10所得的余數(shù)是百位數(shù)字
時數(shù)的個數(shù)
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
intcount=0;
inta=0,aa=O,aaa=0;
for(inti=100;i<=999;i++){
if(i%2==1){
a=i%10H個位
aa=(i/10)%10;//i(i
aaa=(i/10)/10;〃百位
if(aaa==((a+aa)%13)){
count++;
}
)
}
System.ot/f.println("所求個數(shù)為:"+count+"個
)
16.解百馬百瓦古題。
大、小馬和馬駒共100匹,共馱100片瓦。大馬一馱三,小馬一馱二,馬駒二馱一,--次
馱完,三種馬都馱,共有多少種組合?
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
for(inti=1;i<=98;i++){
for(intj=1;j<=98;j++)[
for(intk=1;k<=98;k++){
if(i+j+k==100&&k%2==0&&i*3+j*2+k/2*1==100){
System.o".println("大馬?i+"小馬:"+j+"馬駒:"+K+"");
)
)
)
}
}
17.求100-200之間的所有素數(shù)
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
TestOOIs=newTestOOI();
s.Methodi();
)
〃判斷101-200之間有多少個素數(shù),并輸出所有素數(shù)
publicvoidMethodi(){
intcount=0;
System.outprintln(-100-200之間的素數(shù)有:”);
for(inti=1O1;i<=200;i++){
booleanflag=true;
for(intj=2;j<=Math.sqrt(i);j++){
if(i%j==0){
flag=false;
break;
)
}
if(flag){
count++;
System.oi/tprint(i+'
}
)
System.OL/Aprintln(M\n共芍"+count+”個)
18.輸出水仙花的個數(shù)
(所謂水仙花數(shù)是指一種三位十進(jìn)制數(shù),該數(shù)的各位數(shù)字立方之和等于該數(shù)自身。例如
153是一種水仙花數(shù),由于1人3+5人3+3人3=153)
實現(xiàn)代碼:
publicclassTestOOI{
staticintb,bb,bbb;
publicstaticvoidmain(String[]args){
System.ouf.println("水仙花數(shù)有:");
intcount=0;
for(intnum=101;num<1000;num++){
bbb=num/100;
bb=(num%100)/10;
(num%100)%10;
if(bbb*bbb*bbb+bb*bb*bb+b*b*b==num){
count++;
System.ourprintln(num);
}
)
System.?!?printin("共有,+count+"個");
19.猴子摘桃問題
猴子第1天摘下若干桃子,當(dāng)即吃掉二分之一,又多吃一種,第二天將剩余的部分吃掉二
分之一還多一種;以此類推,到第10天只剩余1個。問第1天共摘了多少桃子
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
inta=1力第十個月的桃了?個數(shù)
intb=10;//用b-1來農(nóng)達(dá)所通過的月數(shù)
for(inti=b-1;i>=1;i-){
a=(a+1)*2;
)
System."1.print("第一天共摘j'"+a+"個桃子");
)
}//打印成果為:第一天共摘了1534個桃子
20.一種兩位數(shù)的正整數(shù),假如將其個
位數(shù)與十位數(shù)字對調(diào)所生成時數(shù)稱為其
對調(diào)數(shù),如28是82時對調(diào)數(shù)?,F(xiàn)給定
一種兩位的正整數(shù)46,請找到另一種
兩位的整數(shù),使這兩個數(shù)之和等于它們
時各自的對調(diào)數(shù)之和。這樣的另一種兩
位數(shù)有多少個。
實現(xiàn)代碼:
publicclassTestOOI{
staticintdemo=46;
publicstaticvoidmain(String[]args){
intdemoSum=(demo/10)+(demo%10)*10;
intcount=0;
System.ouf.printlnf?這樣向兩位數(shù)有:");
for(inti=10;i<100;i++){
intshi=i/10;
intge=(i%10)*10;
intsum=shi+ge;
if((demo+i)==(demoSum+sum)){
count++;
System.ouf.print(i+"');
)
)
System.outprintln("\r\n共有"+count+"個");
)
21.求1?200之間時能被7整除的數(shù)
的平方和
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
intsum=0;
for(inti=1;i<=200;i++){
if(i%7==0){
sum=sum+(i*i);
)
)
System.ourprintln("1-200之間口勺能被7整除的數(shù)口勺平方和="+sum);
)
22.求1~99的平方根的和并輸出成
果。(保留小數(shù)點兩位)
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
doublesum=0;
for(inti=1;i<=99;i++){
sum=sum+Math.sqrt(i);
)
System.ot/Aprintln("1~99小J平方根/、J和"+sum);
)
23.求[351,432]之間既不能被3整除,
也不能被8整除的正整數(shù)的個數(shù)
實現(xiàn)代碼:
publicclassTestOOI{
publicstaticvoidmain(String[]args){
intcount=0;
System.o”.primin("[351,432]之間既不能被3整除,也不能被8整除H勺正整數(shù)有:");
for(inti=351;i<=432;i++){
if(i%3!=0&&i%8!=0){
count++;
System.ouf.print(i+"');
)
)
System.ouf.println("\r\n共有:"+count+"個");
}
24.已知24有8個正整數(shù)因子
(即:1,2,3,4,6,8,12,24),而24恰好被其因子個數(shù)8整除。問[100,300]之間有多少個這樣
日勺數(shù)。
實現(xiàn)代碼:
mportjava.util.ArrayList;
importjava.util.List;
publicclassTestOOI{
publicstaticvoidmain(String[]args){
intk;
intflag=0;
intsize=0;
System.ouf.println(R00,300]之間符合題意的正整數(shù)有:");
for(intn=100;n<=300;n++){
List<lnteger>list=newArrayList<lnteger>();
for(inti=1;i<=n;i++){
if(n%i==0){
l
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 健身私教課程合同及退款協(xié)議
- Unit 1 My classroom (教學(xué)設(shè)計)-2024-2025學(xué)年人教PEP版英語四年級上冊
- 10《傳統(tǒng)美德 源遠(yuǎn)流長》 教學(xué)設(shè)計-2024-2025學(xué)年道德與法治五年級上冊統(tǒng)編版
- 2025屆高考生物備考教學(xué)設(shè)計:第六章 遺傳的分子基礎(chǔ) 課時2 DNA分子的結(jié)構(gòu)、復(fù)制及基因的本質(zhì)
- Module 2 Unit 2 There are lots of beautiful lakes in China(教學(xué)設(shè)計)-2024-2025學(xué)年外研版(三起)英語六年級上冊
- Module 10 Unit 2 教學(xué)設(shè)計 2024-2025學(xué)年外研版九年級英語上冊
- 白坪鄉(xiāng)農(nóng)貿(mào)市場施工合同
- 框架建筑合同范本
- 11 白樺 第一課時 教學(xué)設(shè)計 -2023-2024學(xué)年語文四年級下冊統(tǒng)編版
- 土地承包合同范本個人
- 2024年成人高等教育學(xué)士學(xué)位英語水平考試大綱
- 職業(yè)技術(shù)學(xué)院《酒店財務(wù)管理》課程標(biāo)準(zhǔn)
- 【蘇教版信息科技】三年級下冊8.1《認(rèn)識自主可控》教案
- MIL-STD-202-211-2020美國美軍標(biāo)準(zhǔn)
- 《假性動脈瘤》課件
- JBT 14682-2024 多關(guān)節(jié)機器人用伺服電動機技術(shù)規(guī)范(正式版)
- DL-T 572-2021電力變壓器運行規(guī)程-PDF解密
- 教科版四下科學(xué)《植物的生長變化》單元解讀(新教材解讀)
- 2024年高考生物考前信息必刷卷02(全國卷新教材)(含答案與解析)
- JB-T 14509-2023 反滲透海水淡化設(shè)備技術(shù)規(guī)范
- GB/T 14799-2024土工合成材料有效孔徑的測定干篩法
評論
0/150
提交評論