C++編程練習(xí)題及答案_第1頁
C++編程練習(xí)題及答案_第2頁
C++編程練習(xí)題及答案_第3頁
C++編程練習(xí)題及答案_第4頁
C++編程練習(xí)題及答案_第5頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

一、簡單問題:1.編程求下列式子的值,y=1-1/2+1/3-1/4+???+1/99-1/100并將結(jié)果輸出,格式為:1-1/2+1/3-1/4+???+1/99-1/100二表達(dá)式的值publicclassPorg{publicstaticvoidmain(String[]args){doublesum=0;for(doublei=1;i<=100;i++){sum=sum+(-1,i-1)*(1/i);}"1-1/2+1/3-1/4+???+1/99-1/100二"+sum);}}2?請(qǐng)編程實(shí)現(xiàn):由鍵盤輸入的任意一組字符,統(tǒng)計(jì)其中大寫字母的個(gè)數(shù)m和小寫字母的個(gè)數(shù)n,并輸出m、n中的較大者。importclassProg2{publicstaticvoidmain(String[]args){intm=0,n=0;Scannercin二newScanner;Stringstr=();for(inti=0;i<();i++){if(i)>'A'&&(i)<='Z')m++;elsen++;}if(m>n){}else}}3.編程,求全部水仙花數(shù)。所謂水仙花數(shù)是指一個(gè)三位數(shù),其各位數(shù)字立方的和等于該數(shù)。如:153二13+53+33。publicclassProg3{publicstaticvoidmain(String[]args){inta,b,c;for(a=1;a<=9;a++){}}}}for(b=0;b<=9;b++){for(c=0;c<=9;c++){if(a*100+b*10+c==a*a*a+b*b*b+c*c*c)}}}}4?請(qǐng)編制程序判斷輸入的正整數(shù)是否既是5又是7的整倍數(shù)。若是,則輸出yes;否則輸出n。。importclassProg4{publicstaticvoidmain(String[]args){Scannercin=newScanner;inti=();if(i%5==0&&i%7==0)TOC\o"1-5"\h\zIIII、"yes");elseIIII、"no");}}5?請(qǐng)編程實(shí)現(xiàn):對(duì)于給定的一個(gè)百分制成績,輸出相應(yīng)的五分制成績。設(shè):90分以上為‘A'80—89分為‘B'70—79分為‘C'60—69分為‘D'60分以下為‘E‘。importclassProg5{publicstaticvoidmain(String[]args){Scannercin=newScanner;intm=();if(m>=60&&m<=69)"D");elseif(m>=70&&m<=79)"C");elseif(m>=80&&m<=89)"B");elseif(m>=90)"A");else"E");}}輸入一行字符,將其中的字母變成其后續(xù)的第3個(gè)字母,輸出。例:aTd,xTa;yTb;編程實(shí)現(xiàn)。importclassProg6{publicstaticvoidmain(String[]args){char[]zimu=new―IIIIIIIIIIII_rIIIIIII■II■IIIIIIIIIIIIIIIIIIIIIIIIIIchar[]{'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u',IIIIIIIIIIIIIIIII1'v','w','x','y','z','a','b','c'};Scannercin=newScanner;Stringstr=();for(intj=0;j<();j++){for(inti=0;i<29;i++){if(j)==zimu[i]){break;}}}編寫程序,輸入任意一個(gè)1~7之間的整數(shù),將他們轉(zhuǎn)換成對(duì)應(yīng)的英文單詞例如:1轉(zhuǎn)換成Monday,7轉(zhuǎn)換成Sunday.importclassProg7{publicstaticvoidmain(String[]args){"請(qǐng)輸入任意一個(gè)1~7之間的整數(shù)\n");Scannercin=newScanner;intm=();if(m==1)"Monday");elseif(m==2)"Tuesday");elseif(m==3)"Wensday");elseif(m==4)"Thuesday");elseif(m==5)"Friday");elseif(m==6)"Saturday");else"Sunday");}輸入三角形的三邊a,b,c,判斷能否構(gòu)成三角形.若能,計(jì)算面積.importclassProg8{publicstaticvoidmain(String[]args){"請(qǐng)輸入三個(gè)整數(shù)\n");Scannercin=newScanner;inta=();intb=();intc=();if(a+b<c||a+c<b||c+b<a){"不能構(gòu)成三角形\n");}else{int丨二a+b+c;}}}編程序,輸入a,b,c,求方程ax2^bx+c=0的解。importclassProg9{publicstaticvoidmain(String[]args){"請(qǐng)輸入三個(gè)整數(shù)\n");Scannercin=newScanner;inta=();intb=();intc=();if(a==0){}elseif(b*b-4*a*c>=0){doublex1=(-b+(1/2,b*b-4*a*c))/(2*a);doublex2=(1/2,b*b-4*a*c))/(2*a);}else"無解");}計(jì)算出前20項(xiàng)fibonacci數(shù)列,要求一行打印5個(gè)數(shù).一般而言,兔子在出生兩個(gè)月后,就有繁殖能力,一對(duì)兔子每個(gè)月能生出一對(duì)小兔子來。如果所有兔都不死,那么一年以后可以繁殖多少對(duì)兔子?我們不妨拿新出生的一對(duì)小兔子分析一下:第一個(gè)月小兔子沒有繁殖能力,所以還是一對(duì);兩個(gè)月后,生下一對(duì)小兔總數(shù)共有兩對(duì);三個(gè)月以后,老兔子又生下一對(duì),因?yàn)樾⊥米舆€沒有繁殖能力,所以一共是三對(duì);依次類推可以列出下表:經(jīng)過月數(shù)0123456789101112幼仔對(duì)數(shù)01123581321345589144成兔對(duì)數(shù)1123581321345589144233總體對(duì)數(shù)123581321345589144233377importclassProg10{publicstaticvoidmain(String[]args){Scannercin=newScanner;intn=();inta=0,b=1,c=1;if(n==1){);););}else{for(inti=2;i<=n;i++){a=b;b=c;c=a+b;}"幼崽數(shù)"+a+"成年兔子書"+b+"總數(shù)"+c);}}}11.輸出100~10000之間個(gè)位數(shù)為3的所有素?cái)?shù)。publicclassProg11{publicstaticvoidmain(String[]args){for(inti=103;i<10000;i=i+10){booleanflag=true;for(intj=2;j<i/2;j++){if(i%j==0){flag=false;break;}}if(flag==true){}}}12.百錢買百雞問題:公雞每只5元,母雞每只3元,小雞3只一元,問一百元買一百只雞有幾種買法.publicclassProg12{publicstaticvoidmain(String[]args){intm=0;for(inta=0;a<100;a++){for(intb=0;b<100;b++){for(intc=0;c<100;c++)if(5*a+3*b+1/3*c==100&&a+b+c==100)m++;}}"一百元買一百只雞有"+m+"種買法");}}13?請(qǐng)編制程序要求輸入整數(shù)a和b,若a2+b2大于100,則輸出a2+b2百位以上的數(shù)字,否則輸出兩數(shù)之和。importclassProg13{publicstaticvoidmain(String[]args){"請(qǐng)輸入兩個(gè)整數(shù)\n");Scannercin=newScanner;inta=();intb=();if(a*a+b*b>100){}}}}else}}編程實(shí)現(xiàn):對(duì)鍵盤輸入的任意一個(gè)四位正整數(shù),計(jì)算各位數(shù)字平方和。如:2345,則:計(jì)算22+32+42+52importclassProg14{publicstaticvoidmain(String[]args){"請(qǐng)輸入任意一個(gè)四位正整數(shù)\n");intsum=0;Scannercin=newScanner;inta=();sum=(a/1000*a/1000)+((a/100)%10*(a/100)%10)+((a/10%100%10)*(a/10%100%10))+((a%10)*(a%10));}}有1020個(gè)西瓜,第一天賣一半多兩個(gè),以后每天賣剩下的一半多兩個(gè),問幾天以后能賣完,請(qǐng)編程.publicclassProg15{publicstaticvoidmain(String[]args){intm=0,sum=1020;do{sum=sum/2-2;m++;}while(sum>=0);"天以后能賣完");}}編程,輸出200以內(nèi)所有完全平方數(shù)C(滿足C2二A2+B2)及其個(gè)數(shù).publicclassProg16{}}}}}}}}}publicstaticvoidmain(String[]args){intm=0;for(intC=1;C<200;C++){for(intA=1;A<=200;A++){for(intB=1;B<=200;B++){A=201;if(A*A+B*B==C*C)A=201;{B=201;m++;}}}}"個(gè)數(shù)為:"+m);}}設(shè)N是一個(gè)四位數(shù),它的9倍恰好是其反序數(shù)(例如:123的反序數(shù)是321),編程,輸出所有滿足條件的N。packageeasy;publicclassThe17{staticlongs,M;publicstaticvoidmain(String[]args){for(longN=1009;N<=1109;N=N+10){M=9*N;s=0;while(M>0){s=s*10+M%10;M=M/10;}if(N==s)}編程,輸出555555的約數(shù)中最大的三位數(shù)。packageeasy;publicclassThe18th{publicstaticvoidmain(String[]args){doublea=555555;longb=0;編程,輸出所有個(gè)位數(shù)為6且能被31整除的五位數(shù)及其個(gè)數(shù)。packageeasy;publicclassThe19th{publicstaticvoidmain(String[]args){for(longi=10006;i<=99996;i=i+10){if(i%31==0){}}}}20.編寫程序,輸入兩個(gè)整數(shù),和+、-、*、/、%之中的任意一個(gè)運(yùn)算符,輸出計(jì)算結(jié)果.packageeasy;計(jì)算:1+1/(1+2)+1/(1+2+3)+■■■+1/(1+2+???+n),n由鍵盤輸入。packageeasy;importclassThe21th{publicstaticvoidmain(String[]args){doublesum=0,div=0;Scannercin=newScanner;intn=();for(inti=1;i<=n;i++){div=div+i;"1/"+div);sum=sum+1/div;}}}22.編程計(jì)算:1*2*3+3*4*5+???+99*100*101的值.packageeasy;publicclassThe22th{publicstaticvoidmain(String[]args){longsum=0;for(inti=1;i+2<=101;i=i+2){sum=sum+i*(i+1)*(i+2);}}二、比較簡單問題:1編一個(gè)函數(shù)GCD,求兩個(gè)無符號(hào)整數(shù)的最大公約數(shù)。主函數(shù)輸入兩個(gè)正整數(shù)m和n,調(diào)用GCD,求出m和n的最大公約數(shù)和最小公倍數(shù)?并輸出。packagemoreEasy;importclassThe1th{publicstaticvoidmain(String[]args){Scannercin=newScanner;intm=();intn=();"和"+n+"的最大公約數(shù)為:"+GCD(m,n));"和"+n+"的最小公倍數(shù)為:"+m*n/GCD(m,n));}publicstaticintGCD(inta,intb){intr=0;for(inti=1;i<=a&&i<=b;i++){if(a%i==0&&b%i==0&&r<i){r=i;}}請(qǐng)編程實(shí)現(xiàn):建立一個(gè)4*4的二維整型數(shù)組,求對(duì)角線元素的和。packagemoreEasy;importclassThe2th{publicstaticvoidmain(String[]args){intewsz[][]=newint[4][4];Scannercin=newScanner;for(inti=0;i<;i++){for(intj=0;j<ewsz[i].length;j++){ewsz[i][j]=();}}/*for(inti=0;i<;i++){for(intj=0;j<ewsz[i].length;j++){if(j==3){"");}}}*/intsum=0;for(inti=0;i<;i++){sum=sum+ewsz[i][i];}}}3.寫一個(gè)判斷素?cái)?shù)的函數(shù)prime,在主函數(shù)中輸入10個(gè)整數(shù),調(diào)用prime,輸出這10個(gè)整數(shù)中的素?cái)?shù)的累加和。packagemoreEasy;importclassThe3th{publicstaticvoidmain(String[]args){int[]shu=newint[10];intsum=0;Scannercin=newScanner;for(inti=0;i<;i++){shu[i]=();}for(inti=0;i<;i++){if(prime(shu[i]))sum=sum+shu[i];}}publicstaticbooleanprime(inta){輸出最高成績和最低成績及相應(yīng)的序號(hào)。packagemoreEasy;importclassThe4th{publicstaticvoidmain(String[]args){intn,n1=0,max,min;Scannercin=newScanner;"學(xué)生人數(shù)");n=();int[]chengJi=newint[n];for(inti=0;i<n;i++){chengJi[i]=();}max=chengJi[0];min=chengJi[0];for(intj=0;j<;j++){if(max<chengJi[j]){max=chengJi[j];n=j;}if(min>chengJi[j]){min=chengJi[j];n1=j;}"max="+max+""+n);"min="+min+""+n1);}}5.編程計(jì)算:1!+2!+3!+???+20!,并將結(jié)果輸出?輸出格式:1!+2!+3!+???+20!二表達(dá)式的值packagemoreEasy;publicclassThe5th{publicstaticvoidmain(String[]args){longsum=0;for(inti=1;i<=20;i++){longr=1;for(intj=1;j<=i;j++){r*=j;}sum二sum+r;有一個(gè)3*4的矩陣,編程實(shí)現(xiàn):找出該矩陣中每行元素的最大值,存入一個(gè)一維數(shù)組中。輸出原始矩陣和結(jié)果矩陣。7.將若干個(gè)整數(shù)放到一維數(shù)組中,找出該數(shù)組中的最大值和它的下標(biāo)。然后將它和數(shù)組中的最前面的元素對(duì)換。不明白packagemoreEasy;importclassThe7th{publicstaticvoidmain(String[]args){int[]array二newint[10];Scannercin二newScanner;"數(shù)組長度:");intn=();for(inti=0;i<n;i++){array[i]=();}intmin二array[0];intmax二array[0];編寫一個(gè)函數(shù)converse,將一維數(shù)組中的數(shù)逆序存放,不允許使用輔助數(shù)組。主函數(shù)輸入原始數(shù)據(jù),調(diào)用converse,實(shí)現(xiàn)逆置。并將原數(shù)組和逆置后的數(shù)組輸出packagemoreEasy;importclassThe8th{publicstaticvoidmain(String[]args){converse();}publicstaticvoidconverse(){int[]ar=newint[10];}}}}Scannercin=newScanner;for(inti=0;i<;i++){ar[i]=();編寫函數(shù),將給定的字符串的大寫字母轉(zhuǎn)變成小寫字母;其它字符不變。主函數(shù)輸入一個(gè)字符串,調(diào)用該函數(shù)對(duì)其進(jìn)行轉(zhuǎn)換,分別輸出原串和轉(zhuǎn)換之后的串。packagemoreEasy;importclassThe9th{staticStringstr="";publicstaticvoidmain(String[]args){Stringstr="";Scannercin=newScanner;str=();zhuanHuan(str);}publicstaticvoidzhuanHuan(Stringstr1){str=str1;str=();}}編寫一個(gè)函數(shù),將字符數(shù)組a中的全部字符復(fù)制到字符數(shù)組b中.不要使用strepy函數(shù).主函數(shù)輸入任意一個(gè)字符串,調(diào)該函數(shù),復(fù)制出另一個(gè)字符串。將兩個(gè)串輸出。paekagemoreEasy;importelassThe10th{publiestatievoidmain(String[]args){Seannerein=newSeanner;Stringstr=();ehar[]aa=newehar[()];ehar[]bb=newehar[()];for(inti=0;i<;i++){aa[i]=(i);}eopy(aa,bb);for(inti=0;i<;i++){"");}"");for(inti=0;i<;i++){"");}publiestatievoideopy(ehar[]a,ehar[]b){for(inti=0;i<;i++){b[i]=a[i];}}}判斷一個(gè)N*N的矩陣是否為對(duì)稱矩陣.將原矩陣輸出,判斷結(jié)果輸出.packagemoreEasy;importclassThe11th{publicstaticvoidmain(String[]args){Scannercin=newScanner;intn=();intcount=0;int[][]duiCheng=newint[n][n];for(inti=0;i<;i++)for(intj=0;j<duiCheng[i].length;j++){duiCheng[i][j]=();}for(inti=0;i<;i++)for(intj=0;j<duiCheng[i].length;j++){if(j==n-1)"\n");else"");}for(inti=0;i<;i++)for(intj=0;j<duiCheng[i].length;j++){if(duiCheng[i][j]==duiCheng[j][i])count++;}if(count==n*n)"對(duì)稱矩陣");else"非對(duì)稱矩陣");}}給出年、月、日,計(jì)算該日是該年的第幾天?packagemoreEasy;importclassThe12th{publicstaticvoidmain(String[]args){intn=0;Scannercin=newScanner;inty=();"年");intm=();"月");intd=();"日");if(y%4==0&&y%100!=0||y%400==0){switch(m){case1:n=d;break;case2:n=d+31;break;case3:n=d+31+29;break;case4:n=d+31+29+31;break;case5:n=d+31+29+31+30;break;case6:n=d+31+29+31+30+31;break;case7:n=d+31+29+31+30+31+30;break;case8:n=d+31+29+31+30+31+30+31;break;case9:n=d+31+29+31+30+31+30+31+31;break;case10:n=d+31+29+31+30+31+30+31+31+30;break;case11:n=d+31+29+31+30+31+30+31+31+30+31;break;case12:n=d+31+29+31+30+31+30+31+31+30+31+30;break;}}else{switch(m){case1:n=d;break;case2:n=d+31;break;case3:n=d+31+28;break;case4:n=d+31+28+31;break;case5:n=d+31+28+31+30;break;case6:n=d+31+28+31+30+31;break;case7:n=d+31+28+31+30+31+30;break;case8:n=d+31+28+31+30+31+30+31;break;case9:n=d+31+28+31+30+31+30+31+31;break;case10:n=d+31+28+31+30+31+30+31+31+30;break;case11:n=d+31+28+31+30+31+30+31+31+30+31;break;case12:n=d+31+28+31+30+31+30+31+31+30+31+30;bre

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論