




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?这是一个菲波拉契数列问题publicclasslianxi01publicstaticvoidmain(Stringargs)System.out.println(第1个月的兔子对数:1)System.out.println(第2个月的兔子对数:1)intf1=1f2=1fM=24for(inti=3i=90A:x=60B:CSystem.out.println(等级为:+grade)【程序6】题目:输入两个正整数m和n,求其最大公约数和最小公倍数。在循环中,只要除数不等于0,用较大数除以较小的数,将小的一个数作为下一轮循环的大数,取得的余数作为下一轮循环的较小的数,如此循环直到较小的数的值为0,返回较大的数,此数即为最大公约数,最小公倍数为两数之积除以最大公约数。importjava.util.publicclasslianxi06publicstaticvoidmain(Stringargs)intabmScanners=newScanner(System.in)System.out.print(键入一个整数:)a=s.nextInt()System.out.print(再键入一个整数:)b=s.nextInt()deffcd=newdeff()m=cd.deff(ab)intn=abmSystem.out.println(最大公约数:+m)System.out.println(最小公倍数:+n)classdeffpublicintdeff(intxinty)inttif(xz)intt=xx=zz=tif(yz)intt=yy=zz=tSystem.out.println(三个数字由小到大排列为:+x+y+z)classpublicint()intvalue=0Scanners=newScanner(System.in)value=s.nextInt()returnvalue【程序16】题目:输出99口诀。publicclasslianxi16publicstaticvoidmain(Stringargs)for(inti=1i10i+)for(intj=1j=ij+)System.out.print(j+i+=+ji+)if(ji10)System.out.print()System.out.println()【程序17】题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。publicclasslianxi17publicstaticvoidmain(Stringargs)intx=1for(inti=2i=10i+)x=(x+1)2System.out.println(猴子第一天摘了+x+个桃子)【程序18】题目:两个乒乓球队进行比赛,各出三人。甲队为abc三人,乙队为xyz三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和xz比,请编程序找出三队赛手的名单。publicclasslianxi18staticcharm=abcstaticcharn=xyzpublicstaticvoidmain(Stringargs)for(inti=0im.lengthi+)for(intj=0jn.lengthj+)if(mi=anj=x)continueelseif(mi=anj=y)continueelseif(mi=cnj=x)|(mi=cnj=z)continueelseif(mi=bnj=z)|(mi=bnj=y)continueelseSystem.out.println(mi+vs+nj)【程序19】题目:打印出如下图案(菱形)publicclasslianxi19publicstaticvoidmain(Stringargs)intH=7W=7高和宽必须是相等的奇数for(inti=0i(H+1)2i+)for(intj=0jW2-ij+)System.out.print()for(intk=1k(i+1)2k+)System.out.print()System.out.println()for(inti=1i=H2i+)for(intj=1j=ij+)System.out.print()for(intk=1k=W-2ik+)System.out.print()System.out.println()【程序20】题目:有一分数序列:21,32,53,85,138,2113.求出这个数列的前20项之和。publicclasslianxi20publicstaticvoidmain(Stringargs)intx=2y=1tdoublesum=0for(inti=1i=20i+)sum=sum+(double)xyt=yy=xx=y+tSystem.out.println(前20项相加之和是:+sum)【程序21】题目:求1+2!+3!+.+20!的和publicclasslianxi21publicstaticvoidmain(Stringargs)longsum=0longfac=1for(inti=1i=20i+)fac=facisum+=facSystem.out.println(sum)【程序22】题目:利用递归方法求5!。publicclasslianxi22publicstaticvoidmain(Stringargs)intn=5recfr=newrec()System.out.println(n+!=+fr.rec(n)classrecpubliclongrec(intn)longvalue=0if(n=1)value=1elsevalue=nrec(n-1)returnvalue【程序23】题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?publicclasslianxi23publicstaticvoidmain(Stringargs)intage=10for(inti=2i=0i-)System.out.print(chi)【程序25】题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。importjava.util.publicclasslianxi25publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)intadoSystem.out.print(请输入一个5位正整数:)a=s.nextInt()while(a99999)Stringss=String.valueOf(a)charch=ss.toCharArray()if(ch0=ch4ch1=ch3)System.out.println(这是一个回文数)elseSystem.out.println(这不是一个回文数)这个更好,不限位数importjava.util.publicclasslianxi25apublicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)booleanis=trueSystem.out.print(请输入一个正整数:)longa=s.nextLong()Stringss=Long.toString(a)charch=ss.toCharArray()intj=ch.lengthfor(inti=0ij2i+)if(chi!=chj-i-1)is=falseif(is=true)System.out.println(这是一个回文数)elseSystem.out.println(这不是一个回文数)【程序26】题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。importjava.util.publicclasslianxi26publicstaticvoidmain(Stringargs)getChartw=newgetChar()System.out.println(请输入星期的第一个大写字母:)charch=tw.getChar()switch(ch)caseM:System.out.println(Monday)breakcaseW:System.out.println(Wednesday)breakcaseF:System.out.println(Friday)breakcaseT:System.out.println(请输入星期的第二个字母:)charch2=tw.getChar()if(ch2=U)System.out.println(Tuesday)elseif(ch2=H)System.out.println(Thursday)elseSystem.out.println(无此写法!)breakcaseS:System.out.println(请输入星期的第二个字母:)charch2=tw.getChar()if(ch2=U)System.out.println(Sunday)elseif(ch2=A)System.out.println(Saturday)elseSystem.out.println(无此写法!)breakdefault:System.out.println(无此写法!)classgetCharpublicchargetChar()Scanners=newScanner(System.in)Stringstr=s.nextLine()charch=str.charAt(0)if(chZ)System.out.println(输入错误,请重新输入)ch=getChar()returnch【程序27】题目:求100之内的素数使用除sqrt(n)的方法求出的素数不包括2和3publicclasslianxi27publicstaticvoidmain(Stringargs)booleanb=falseSystem.out.print(2+)System.out.print(3+)for(inti=3i100i+=2)for(intj=2j=Math.sqrt(i)j+)if(i%j=0)b=falsebreakelseb=trueif(b=true)System.out.print(i+)该程序使用除1位素数得2位方法,运行效率高通用性差。publicclasslianxi27apublicstaticvoidmain(Stringargs)inta=newint2357for(intj=0j4j+)System.out.print(aj+)booleanb=falsefor(inti=11i100i+=2)for(intj=0j4j+)if(i%aj=0)b=falsebreakelseb=trueif(b=true)System.out.print(i+)【程序28】题目:对10个数进行排序importjava.util.publicclasslianxi28publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)inta=newint10System.out.println(请输入10个整数:)for(inti=0i10i+)ai=s.nextInt()for(inti=0i10i+)for(intj=i+1jaj)intt=aiai=ajaj=tfor(inti=0i10i+)System.out.print(ai+)【程序29】题目:求一个33矩阵对角线元素之和importjava.util.publicclasslianxi29publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)inta=newint33System.out.println(请输入9个整数:)for(inti=0i3i+)for(intj=0j3j+)aij=s.nextInt()System.out.println(输入的33矩阵是:)for(inti=0i3i+)for(intj=0j3j+)System.out.print(aij+)System.out.println()intsum=0for(inti=0i3i+)for(intj=0j=aa.length-1)bb.length-1=numfor(i=0ia.lengthi+)bi=aielsefor(i=0i=ai)bi=aielsebi=numbreakfor(intj=i+1jb.lengthj+)bj=aj-1for(i=0ib.lengthi+)System.out.print(bi+)【程序31】题目:将一个数组逆序输出。importjava.util.publicclasslianxi31publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)inta=newint20System.out.println(请输入多个正整数(输入-1表示结束):)inti=0jdoai=s.nextInt()i+while(ai-1!=-1)System.out.println(你输入的数组为:)for(j=0j=0j=j-1)System.out.print(aj+)【程序32】题目:取一个整数a从右端开始的47位。importjava.util.publicclasslianxi32publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)System.out.print(请输入一个7位以上的正整数:)longa=s.nextLong()Stringss=Long.toString(a)charch=ss.toCharArray()intj=ch.lengthif(j7)System.out.println(输入错误!)elseSystem.out.println(截取从右端开始的47位是:+chj-7+chj-6+chj-5+chj-4)【程序33】题目:打印出杨辉三角形(要求打印出10行如下图)11112113311464115101051publicclasslianxi33publicstaticvoidmain(Stringargs)inta=newint1010for(inti=0i10i+)aii=1ai0=1for(inti=2i10i+)for(intj=1jij+)aij=ai-1j-1+ai-1jfor(inti=0i10i+)for(intk=0k2(10-i)-1k+)System.out.print()for(intj=0j=ij+)System.out.print(aij+)System.out.println()【程序34】题目:输入3个数abc,按大小顺序输出。importjava.util.Scannerpublicclasslianxi34publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)System.out.println(请输入3个整数:)inta=s.nextInt()intb=s.nextInt()intc=s.nextInt()if(ab)intt=aa=bb=tif(ac)intt=aa=cc=tif(bc)intt=bb=cc=tSystem.out.println(从大到小的顺序输出:)System.out.println(a+b+c)【程序35】题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。importjava.util.publicclasslianxi35publicstaticvoidmain(Stringargs)intN=8inta=newintNScanners=newScanner(System.in)intidx1=0idx2=0System.out.println(请输入8个整数:)for(inti=0iNi+)ai=s.nextInt()System.out.println(你输入的数组为:)for(inti=0iNi+)System.out.print(ai+)intmax=a0min=a0for(inti=0imax)max=aiidx1=iif(aimin)min=aiidx2=iif(idx1!=0)inttemp=a0a0=aidx1aidx1=tempif(idx2!=N-1)inttemp=aN-1aN-1=aidx2aidx2=tempSystem.out.println(n交换后的数组为:)for(inti=0iNi+)System.out.print(ai+)【程序36】题目:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数importjava.util.Scannerpublicclasslianxi36publicstaticvoidmain(Stringargs)intN=10inta=newintNScanners=newScanner(System.in)System.out.println(请输入10个整数:)for(inti=0iNi+)ai=s.nextInt()System.out.print(你输入的数组为:)for(inti=0iNi+)System.out.print(ai+)System.out.print(n请输入向后移动的位数:)intm=s.nextInt()intb=newintmfor(inti=0i=mi-)ai=ai-mfor(inti=0imi+)ai=biSystem.out.print(位移后的数组是:)for(inti=0iNi+)System.out.print(ai+)【程序37】题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。importjava.util.Scannerpublicclasslianxi37publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)System.out.print(请输入排成一圈的人数:)intn=s.nextInt()booleanarr=newbooleannfor(inti=0i1)if(arrindex=true)countNum+if(countNum=3)countNum=0arrindex=falseleftCount-index+if(index=n)index=0for(inti=0ini+)if(arri=true)System.out.println(原排在第+(i+1)+位的人留下了。)【程序38】题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。题目意思似乎不能用length()函数importjava.util.publicclasslianxi38publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)System.out.println(请输入一个字符串:)Stringstr=s.nextLine()System.out.println(字符串的长度是:+str.length()【程序39】题目:编写一个函数,输入n为偶数时,调用函数求12+14+.+1n当输入n为奇数时,调用函数11+13+.+1n(利用指针函数)没有利用指针函数importjava.util.publicclasslianxi39publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)System.out.print(请输入一个正整数n=)intn=s.nextInt()System.out.println(相应数列的和为:+sum(n)publicstaticdoublesum(intn)doubleres=0if(n%2=0)for(inti=2i=ni+=2)res+=(double)1ielsefor(inti=1i=ni+=2)res+=(double)1ireturnres【程序40】题目:字符串排序。publicclasslianxi40publicstaticvoidmain(Stringargs)intN=5Stringtemp=nullStrings=newStringNs0=matters1=states2=solids3=liquids4=gasfor(inti=0iNi+)for(intj=i+1jNj+)if(compare(sisj)=false)temp=sisi=sjsj=tempfor(inti=0iNi+)System.out.println(si)staticbooleancompare(Strings1Strings2)booleanresult=truefor(inti=0is1.length()is2.charAt(i)result=falsebreakelseif(s1.charAt(i)s2.charAt(i)result=truebreakelseif(s1.length()s2.length()result=trueelseresult=falsereturnresult【程序41】题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?publicclasslianxi41publicstaticvoidmain(Stringargs)intimj=0kcountfor(i=4i10000i+=4)count=0m=ifor(k=0k5k+)j=i45+1i=jif(j%4=0)count+elsebreaki=mif(count=4)System.out.println(原有桃子+j+个)break【程序42】题目:809=800+9+1其中代表的两位数8的结果为两位数,9的结果为3位数。求代表的两位数,及809后的结果。题目错了!809x=800 x+9x+1这样的方程无解。去掉那个1就有解了。publicclasslianxi42publicstaticvoidmain(Stringargs)inta=809bifor(i=10i13i+)b=iaif(8i=100)System.out.println(809+i+=+800+i+9+i+=+b)【程序43】题目:求07所能组成的奇数个数。组成1位数是4个。组成2位数是74个。组成3位数是784个。组成4位数是7884个。.publicclasslianxi43publicstaticvoidmain(Stringargs)intsum=4intjSystem.out.println(组成1位数是+sum+个)sum=sum7System.out.println(组成2位数是+sum+个)for(j=3j=9j+)sum=sum8System.out.println(组成+j+位数是+sum+个)【程序44】题目:一个偶数总能表示为两个素数之和。由于用除sqrt(n)的方法求出的素数不包括2和3,因此在判断是否是素数程序中人为添加了一个3。importjava.util.publicclasslianxi44publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)intnidoSystem.out.print(请输入一个大于等于6的偶数:)n=s.nextInt()while(n=6偶数不是重新输入funfc=newfun()for(i=2i=n2i+)if(fc.fun(i)=1(fc.fun(n-i)=1)intj=n-iSystem.out.println(n+=+i+j)输出所有可能的素数对classfunpublicintfun(inta)判断是否是素数的函数intiflag=0if(a=3)flag=1return(flag)for(i=2i=Math.sqrt(a)i+)if(a%i=0)flag=0breakelseflag=1return(flag)不是素数返回0是素数返回1解法二importjava.util.publicclasslianxi44publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)intndoSystem.out.print(请输入一个大于等于6的偶数:)n=s.nextInt()while(n=6偶数不是重新输入for(inti=3i=n2i+=2)if(fun(i)fun(n-i)System.out.println(n+=+i+(n-i)输出所有可能的素数对staticbooleanfun(inta)判断是否是素数的函数booleanflag=falseif(a=3)flag=truereturn(flag)for(inti=2i=Math.sqrt(a)i+)if(a%i=0)flag=falsebreakelseflag=truereturn(flag)【程序45】题目:判断一个素数能被几个9整除题目错了吧?能被9整除的就不是素数了!所以改成整数了。importjava.util.publicclasslianxi45publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)System.out.print(请输入一个整数:)intnum=s.nextInt()inttmp=numintcount=0for(inti=0tmp%9=0)tmp=tmp9count+System.out.println(num+能够被+count+个9整除。)【程序46】题目:两个字符串连接程序importjava.util.publicclasslianxi46publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)System.out.print(请输入一个字符串:)Stringstr1=s.nextLine()System.out.print(请再输入一个字符串:)Stringstr2=s.nextLine()Stringstr=str1+str2System.out.println(连接后的字符串是:+str)【程序47】题目:读取7个数(150)的整数值,每读取一个值,程序打印出该值个数的。importjava.util.publicclasslianxi47publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)intn=1numwhile(n=7)doSystem.out.print(请输入一个1-50之间的整数:)num=s.nextInt()while(num50)for(inti=1i=numi+)System.out.print()System.out.println()n+【程序48】题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。importjava.util.publicclasslianxi48publicstaticvoidmain(Stringargs)Scanners=newScanner(System.in)intnum=0tempdoSystem.out.print(请输入一个4位正整数:)num=s.nextInt()while(num9999)inta=newint4a0=num1000取千位的数字a1=(num100)%10取百位的数字a2=(num10)%10取十位的数字a3=num%10取个位的数字for(intj=0j4j+)aj+=5aj%=10for(intj=0j=1j+)temp=ajaj=a3-ja3-j=tempSystem.out.print(加密后的数字为:)for(intj=0j4j+)System
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农村新能源市场2025年技术创新与能源互联网研究报告
- 2025年新能源商用车辆在环卫设施清洁中的应用场景及市场前景报告
- 保险行业数字化理赔服务在信用保险中的信用风险监测报告
- 2025年生物质能广告宣传合规与技术创新案例分析报告
- 2025年智慧工厂射频识别(RFID)技术在供应链管理中的应用案例分析报告
- 安全教育培训纳入刑法课件
- 共享民宿项目在2025年共享经济浪潮中的可行性研究评估报告
- 教育行业质量评估与认证体系在学生法治教育中的实践探索报告
- 2025风力发电设备制造行业:技术创新与新能源产业融合报告
- 2025-2026学年六年级英语上册辽师大版期末模拟测试卷三(含答案)
- 食品公司员工培训计划书
- 风湿性疾病的影像学表现
- 四川省建筑工程地下结构抗浮锚杆关键技术作业规程
- 灭火器正确使用方法
- 国有企业普法培训课件
- 传统建筑对现代建筑的影响与启示
- 用户需求驱动产品设计
- 《铁路旅客运输组织》课件
- 文明礼仪从我做起主题班会课件
- 健康养老与医养结合
- 小学生主题班会 好习惯的养成 课件
评论
0/150
提交评论