JAVA編程題全集(50題及答案)_第1頁
JAVA編程題全集(50題及答案)_第2頁
JAVA編程題全集(50題及答案)_第3頁
JAVA編程題全集(50題及答案)_第4頁
JAVA編程題全集(50題及答案)_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、1】題目:古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數(shù)為多少Jpublicclasslianxi04publicstaticvoidmain(Stringargs)Scanners=newScanner;請鍵入一個正整數(shù):);intn=();intk=2;+=);while(k =90 分的同學(xué)用 A 表示, 60-89 分之題目:利用條件運算符的嵌套來完成此題:學(xué)習(xí)成績間的用B表示,60分以下的用C表示。import.*;publicclasslianxi05publicstaticvoidmain(S

2、tringargs)intx;chargrade;Scanners=newScanner;請輸入一個成績:);x=();grade=x=90A:x=60B:C;等級為:+grade);【程序6】題目:輸入兩個正整數(shù)m和n,求其最大公約數(shù)和最小公倍數(shù)。/*在循環(huán)中,只要除數(shù)不等于0,用較大數(shù)除以較小的數(shù),將小的一個數(shù)作為下一輪循環(huán)的大數(shù),取得的余數(shù)作為下一輪循環(huán)的較小的數(shù),如此循環(huán)直到較小的數(shù)的值為0,返回較大的數(shù),此數(shù)即為最大公約數(shù),最小公倍數(shù)為兩數(shù)之積除以最大公約數(shù)。*/import.*;publicclasslianxi06publicstaticvoidmain(Stringargs)i

3、nta,b,m;Scanners=newScanner;鍵入一個整數(shù):);a=();再鍵入一個整數(shù):);b=();deffcd=newdeff();m=(a,b);intn=a*b/m;最大公約數(shù):+m);最小公倍數(shù):+n);classdeffpublicintdeff(intx,inty)intt;if(xy)t=x;x=y;y=t;while(y!=0)if(x=y)returnx;elseintk=x%y;x=y;y=k;returnx;【程序7】題目:輸入一行字符,分別統(tǒng)計出其中英文字母、空格、數(shù)字和其它字符的個數(shù)。import.*;publicclasslianxi07publics

4、taticvoidmain(Stringargs)intdigital=0;intcharacter=0;intother=0;intblank=0;charch=null;Scannersc=newScanner;Strings=();ch=();for(inti=0;i=0&ch=a&chA&ch=Z)character+;elseif(ch=)blank+;elseother+;數(shù)字個數(shù):+digital);英文字母個數(shù):+character);空格個數(shù):+blank);其他字符個數(shù):+other);【程序8】題目:求s=a+aa+aaa+aaaa+aa.a的值,其中a是一個數(shù)字。例如2

5、+22+222+2222+22222(此時共有5個數(shù)相加),幾個數(shù)相加有鍵盤控制。import.*;publicclasslianxi08publicstaticvoidmain(Stringargs)longa,b=0,sum=0;Scanners=newScanner;輸入數(shù)字a的值:);a=();輸入相加的項數(shù):);intn=();inti=0;while(in)b=b+a;sum=sum+b;a=a*10;+i;【程序9】題目:一個數(shù)如果恰好等于它的因子之和,這個數(shù)就稱為完數(shù)。例如6=123.編程找出1000以內(nèi)的所有完數(shù)。publicclasslianxi09publicstatic

6、voidmain(Stringargs)1到1000的完數(shù)有:);for(inti=1;i1000;i+)intt=0;for(intj=1;j=i/2;j+)if(i%j=0)t=t+j;if(t=i)+);【程序10】題目:一球從100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地時,共經(jīng)過多少米第10次反彈多高publicclasslianxi10publicstaticvoidmain(Stringargs)doubleh=100,s=100;for(inti=1;i10;i+)s=s+h;h=h/2;經(jīng)過路程:+s);反彈高度:+h/2);【程序11】題目:

7、有1、2、3、4四個數(shù)字,能組成多少個互不相同且無重復(fù)數(shù)字的三位數(shù)都是多少publicclasslianxi11publicstaticvoidmain(Stringargs)intcount=0;for(intx=1;x5;x+)for(inty=1;y5;y+)for(intz=1;z0&x10&x20&x40&x60&x100)y=20*+40*+40*+(x-100)*;應(yīng)該提取的獎金是+y+萬);【程序13】題目:一個整數(shù),它加上100后是一個完全平方數(shù),再加上168又是一個完全平方數(shù),請問該數(shù)是多少publicclasslianxi13publicstaticvoidmain(St

8、ringargs)for(intx=1;x100000;x+)if(x+100)%1=0)if(x+268)%1=0)+加100是一個完全平方數(shù),再加168又是一個完全平方數(shù));/*按題意循環(huán)應(yīng)該從-100開始(整數(shù)包括正整數(shù)、負(fù)整數(shù)、零),這樣會多一個滿足條件的數(shù)-99。但是我看到大部分人解這道題目時都把題中的“整數(shù)”理解成正整數(shù),我也就隨大流了。*/【程序14】題目:輸入某年某月某日,判斷這一天是這一年的第幾天import.*;publicclasslianxi14publicstaticvoidmain(Stringargs)intyear,month,day;intdays=0;int

9、d=0;inte;inputfymd=newinput();doe=0;輸入年:);year=();輸入月:);month=();輸入天:);day=();if(year0|month12|day31)輸入錯誤,請重新輸入!);e=1;while(e=1);for(inti=1;iy)intt=x;x=y;y=t;if(xz)intt=x;x=z;z=t;if(yz)intt=y;y=z;z=t;三個數(shù)字由小到大排列為:+x+y+z);classinputpublicintinput()intvalue=0;Scanners=newScanner;value=();returnvalue;【程

10、序16】題目:輸出9*9口訣。publicclasslianxi16publicstaticvoidmain(Stringargs)for(inti=1;i10;i+)for(intj=1;j=i;j+)+*+i+=+j*i+);if(j*i10);【程序17】題目:猴子吃桃問題:猴子第一天摘下若干個桃子,當(dāng)即吃了一半,還不癮,又多吃了一個第二天早上又將剩下的桃子吃掉一半,又多吃了一個。以后每天早上都吃了前一天剩下的一半零一個。到第10天早上想再吃時,見只剩下一個桃子了。求第一天共摘了多少。publicclasslianxi17publicstaticvoidmain(Stringargs)i

11、ntx=1;for(inti=2;i=10;i+)x=(x+1)*2;猴子第一天摘了+x+個桃子);【程序18】題目:兩個乒乓球隊進(jìn)行比賽,各出三人。甲隊為a,b,c三人,乙隊為x,y,z三人。已抽簽決定比賽名單。有人向隊員打聽比賽的名單。a說他不和x比,c說他不和x,z比,請編程序找出三隊賽手的名單。publicclasslianxi18staticcharm=a,b,c;staticcharn=x,y,z;publicstaticvoidmain(Stringargs)for(inti=0;i;i+)for(intj=0;j;j+)if(mi=a&nj=x)continue;elseif(

12、mi=a&nj=y)continue;elseif(mi=c&nj=x)|(mi=c&nj=z)continue;elseif(mi=b&nj=z)|(mi=b&nj=y)continue;else+vs+nj);【程序19】題目:打印出如下圖案(菱形)*publicclasslianxi19publicstaticvoidmain(Stringargs)intH=7,W=7;.求出這個數(shù)列的前20項之和。publicclasslianxi20publicstaticvoidmain(Stringargs)intx=2,y=1,t;doublesum=0;for(inti=1;i=20;i+)

13、sum=sum+(double)x/y;t=y;y=x;x=y+t;前20項相加之和是:+sum);【程序21】題目:求1+2!+3!+.+20!的和publicclasslianxi21publicstaticvoidmain(Stringargs)longsum=0;longfac=1;for(inti=1;i=20;i+)fac=fac*i;sum+=fac;【程序22】題目:利用遞歸方法求5!。publicclasslianxi22publicstaticvoidmain(Stringargs)intn=5;recfr=newrec();!=+(n);classrecpubliclon

14、grec(intn)longvalue=0;if(n=1)value=1;elsevalue=n*rec(n-1);returnvalue;【程序23】題目:有5個人坐在一起,問第五個人多少歲他說比第4個人大2歲。問第4個人歲數(shù),他說比第3個人大2歲。問第三個人,又說比第2人大兩歲。問第2個人,說比第一個人大兩歲。最后問第一個人,他說是10歲。請問第五個人多大publicclasslianxi23publicstaticvoidmain(Stringargs)intage=10;for(inti=2;i=0;i-)【程序25】題目:一個5位數(shù),判斷它是不是回文數(shù)。即12321是回文數(shù),個位與萬

15、位相同,十位與千位相同。import.*;publicclasslianxi25publicstaticvoidmain(Stringargs)Scanners=newScanner;inta;do請輸入一個5位正整數(shù):);a=();while(a99999);Stringss=(a);charch=();if(ch0=ch4&ch1=ch3)這是一個回文數(shù));else這不是一個回文數(shù));publicclasslianxi25apublicstaticvoidmain(Stringargs)Scanners=newScanner;booleanis=true;請輸入一個正整數(shù):);longa=

16、();Stringss=(a);charch=();intj=;for(inti=0;ij/2;i+)if(chi!=chj-i-1)is=false;if(is=true)這是一個回文數(shù));else這不是一個回文數(shù));【程序26】題目:請輸入星期幾的第一個字母來判斷一下是星期幾,如果第一個字母一樣,則繼續(xù)判斷第二個字母。import.*;publicclasslianxi26publicstaticvoidmain(Stringargs)getChartw=newgetChar();請輸入星期的第一個大寫字母:);charch=();switch(ch)caseM:Monday);break

17、;caseW:Wednesday);break;caseF:Friday);break;caseT:請輸入星期的第二個字母:);charch2=();if(ch2=U)Tuesday);elseif(ch2=H)Thursday);else無此寫法!);break;caseS:請輸入星期的第二個字母:);charch2=();if(ch2=U)Sunday);elseif(ch2=A)Saturday);else無此寫法!);break;default:無此寫法!);classgetCharpublicchargetChar()Scanners=newScanner;Stringstr=();

18、charch=(0);if(chZ)輸入錯誤,請重新輸入);ch=getChar();returnch;【程序27】題目:求100之內(nèi)的素數(shù);publicclasslianxi28publicstaticvoidmain(Stringargs)Scanners=newScanner;inta=newint10;請輸入10個整數(shù):);for(inti=0;i10;i+)ai=();for(inti=0;i10;i+)for(intj=i+1;jaj)intt=ai;ai=aj;aj=t;for(inti=0;i10;i+)+);【程序29】題目:求一個3*3矩陣對角線元素之和import.*;p

19、ublicclasslianxi29publicstaticvoidmain(Stringargs)Scanners=newScanner;inta=newint33;請輸入9個整數(shù):);for(inti=0;i3;i+)for(intj=0;j3;j+)aij=();輸入的3*3矩陣是:);for(inti=0;i3;i+)for(intj=0;j3;j+)+);intsum=0;for(inti=0;i3;i+)for(intj=0;j=a)b=num;for(i=0;i;i+)bi=ai;elsefor(i=0;i=ai)bi=ai;elsebi=num;break;for(intj=i

20、+1;j;j+)bj=aj-1;for(i=0;i;i+)+);【程序31】題目:將一個數(shù)組逆序輸出。import.*;publicclasslianxi31publicstaticvoidmain(Stringargs)Scanners=newScanner;inta=newint20;請輸入多個正整數(shù)(輸入-1表示結(jié)束):);inti=0,j;doai=();i+;while(ai-1!=-1);你輸入的數(shù)組為:);for(j=0;j=0;j=j-1);【程序32】題目:取一個整數(shù)a從右端開始的47位。import.*;publicclasslianxi32publicstaticvoid

21、main(Stringargs)Scanners=newScanner;請輸入一個7位以上的正整數(shù):);longa=();Stringss=(a);charch=();intj=;if(j7)輸入錯誤!);else”截取從右端開始的47位是:+chj-7+chj-6+chj-5+chU-4);【程序33】題目:打印出楊輝三角形(要求打印出10行如下圖)11112113311464115101051publicclasslianxi33publicstaticvoidmain(Stringargs)inta=newint1010;for(inti=0;i10;i+)aii=1;ai0=1;for

22、(inti=2;i10;i+)for(intj=1;ji;j+)aij=ai-1j-1+ai-1j;for(inti=0;i10;i+)for(intk=0;k2*(10-i)-1;k+);for(intj=0;j=i;j+)+);【程序34】題目:輸入3個數(shù)a,b,c,按大小順序輸出。importpublicclasslianxi34publicstaticvoidmain(Stringargs)Scanners=newScanner;請輸入3個整數(shù):);inta=();intb=();intc=();if(ab)intt=a;a=b;b=t;if(ac)intt=a;a=c;c=t;if(

23、bc)intt=b;b=c;c=t;從大到小的順序輸出:);+b+c);【程序35】題目:輸入數(shù)組,最大的與第一個元素交換,最小的與最后一個元素交換,輸出數(shù)組。import.*;publicclasslianxi35publicstaticvoidmain(Stringargs)inta=newintN;Scanners=newScanner;intidx1=0,idx2=0;請輸入8個整數(shù):);for(inti=0;iN;i+)ai=();你輸入的數(shù)組為:);for(inti=0;iN;i+)+);intmax=a0,min=a0;for(inti=0;imax)max=ai;idx1=i;

24、if(aimin)min=ai;idx2=i;if(idx1!=0)int temp = a0;a0 = aidx1;aidx1=temp;if(idx2!=N-1)inttemp=aN-1;aN-1=aidx2;aidx2=temp;n交換后的數(shù)組為:);for(inti=0;iN;i+)+);【程序36】m 個數(shù)題目:有n個整數(shù),使其前面各數(shù)順序向后移m個位置,最后m個數(shù)變成最前面的importpublicclasslianxi36publicstaticvoidmain(Stringargs)intN=10;inta=newintN;Scanners=newScanner;請輸入10個整

25、數(shù):);for(inti=0;iN;i+)ai=();你輸入的數(shù)組為:);for(inti=0;iN;i+)+);n請輸入向后移動的位數(shù):);intm=();intb=newintm;for(inti=0;i=m;i-)ai=ai-m;for(inti=0;im;i+)ai=bi;位移后的數(shù)組是:);for(inti=0;iN;i+)+);37】題目:有n個人圍成一圈,順序排號。從第一個人開始報數(shù)(從1到3報數(shù)),凡報到的人退出圈子,問最后留下的是原來第幾號的那位。importpublicclasslianxi37publicstaticvoidmain(Stringargs)Scanners

26、=newScanner;請輸入排成一圈的人數(shù):);intn=();booleanarr=newbooleann;for(inti=0;i1)if(arrindex=true)countNum+;if(countNum=3)countNum=0;arrindex=false;leftCount-;index+;if(index=n)index=0;for(inti=0;in;i+)if(arri=true)原排在第+(i+1)+位的人留下了。);【程序38】題目:寫一個函數(shù),求一個字符串的長度,在main函數(shù)中輸入字符串,并輸出其長度。/*題目意思似乎不能用length()函數(shù)*/import.

27、*;publicclasslianxi38publicstaticvoidmain(Stringargs)Scanners=newScanner;請輸入一個字符串:);Stringstr=();字符串的長度是:+();【程序39】題目:編寫一個函數(shù),輸入n為偶數(shù)時,調(diào)用函數(shù)求1/2+1/4+.+1/n,當(dāng)輸入n為奇數(shù)時,調(diào)用函數(shù)1/1+1/3+.+1/n(利用指針函數(shù));publicclasslianxi39publicstaticvoidmain(Stringargs)Scanners=newScanner;請輸入一個正整數(shù)n=);intn=();相應(yīng)數(shù)列的和為:+sum(n);public

28、staticdoublesum(intn)doubleres=0;if(n%2=0)for(inti=2;i=n;i+=2)res+=(double)1/i;elsefor(inti=1;i=n;i+=2)res+=(double)1/i;returnres;【程序40】題目:字符串排序。publicclasslianxi40publicstaticvoidmain(Stringargs)intN=5;Stringtemp=null;Strings=newStringN;s0=matter;s1=state;s2=solid;s3=liquid;s4=gas;for(inti=0;iN;i+)

29、for(intj=i+1;jN;j+)if(compare(si,sj)=false)temp=si;si=sj;sj=temp;for(inti=0;iN;i+)staticbooleancompare(Strings1,Strings2)booleanresult=true;for(inti=0;i()&i(i)result=false;break;elseif(i)(i)result=true;break;elseif()()result=true;elseresult=false;returnresult;【程序41】題目:海灘上有一堆桃子,五只猴子來分。第一只猴子把這堆桃子憑據(jù)分為五

30、份,多了一個,這只猴子把多的一個扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一個,它同樣把多的一個扔入海中,拿走了一份,第三、第四、第五只猴子都是這樣做的,問海灘上原來最少有多少個桃子publicclasslianxi41publicstaticvoidmain(Stringargs)inti,m,j=0,k,count;for(i=4;i10000;i+=4)count=0;m=i;for(k=0;k5;k+)j=i/4*5+1;i=j;if(j%4=0)count+;elsebreak;i=m;if(count=4)原有桃子+j+個);break;42】題目:809*

31、=800*+9*+1其中代表的兩位數(shù),8*的結(jié)果為兩位數(shù),9*的結(jié)果為3位數(shù)。求代表的兩位數(shù),及809*后的結(jié)果。publicclasslianxi43publicstaticvoidmain(Stringargs)intsum=4;intj;組成1位數(shù)是+sum+個);sum=sum*7;組成2位數(shù)是+sum+個);for(j=3;j=9;j+)sum=sum*8;組成+j+位數(shù)是+sum+”個)【程序44】題目:一個偶數(shù)總能表示為兩個素數(shù)之和。;publicclasslianxi44publicstaticvoidmain(Stringargs)Scanners=newScanner;in

32、tn,i;do請輸入一個大于等于6的偶數(shù):);n=();while(n6|n%2!=0);publicclasslianxi44publicstaticvoidmain(Stringargs)Scanners=newScanner;intn;do請輸入一個大于等于6的偶數(shù):);n=();while(n6|n%2!=0);publicclasslianxi45publicstaticvoidmain(Stringargs)Scanners=newScanner;請輸入一個整數(shù):);intnum=();inttmp=num;intcount=0;for(inti=0;tmp%9=0;)tmp=tm

33、p/9;count+;能夠被+count+個9整除。);【程序46】題目:兩個字符串連接程序import.*;publicclasslianxi46publicstaticvoidmain(Stringargs)Scanners=newScanner;請輸入一個字符串:);Stringstr1=();請再輸入一個字符串:);Stringstr2=();Stringstr=str1+str2;連接后的字符串是:+str);【程序47】題目:讀取7個數(shù)(150)的整數(shù)值,每讀取一個值,程序打印出該值個數(shù)的。import.*;publicclasslianxi47publicstaticvoidmain(Stringargs)Sca

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論