Java基础编程练习题soulsjie

以下内容属于个人整理,如有转载请注明出处!

1、编写程序实现对给定的4个整数从大到小的顺序排列。

packageHomeWork01;importjava.util.Scanner;publicclassHomeWork01{staticintnumber=4;//输入4个数存放在数组中staticint[]t1=newint[number];publicstaticvoidmain(String[]args){HomeWork01jiejie=newHomeWork01();jiejie.shunxun();}voidshunxun(){System.out.println("请输入4个数:");Scannerin_t1=newScanner(System.in);//循环输入数组for(inti=0;it1[j])pos=j;}if(pos!=i){t1[i]=t1[i]+t1[pos];t1[pos]=t1[i]-t1[pos];t1[i]=t1[i]-t1[pos];}}for(inti=t1.length-1;i>=0;i--)System.out.print(t1[i]+"\t");}}

2、编写程序求一元二次方程的根。

packageHomeWork02;importjava.util.Scanner;publicclassHomeWork02//△=b^2-4ac的值,若△小于0,一元二次方程无根.若△等于0,一元二次方程有两个相等的根.若△大于0,一元二次方程有两个不相等的实数根{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.println("输入2次方的系数");inta=sc.nextInt();System.out.println("输入1次方的系数");intb=sc.nextInt();System.out.println("输入0次方的系数");intc=sc.nextInt();if((b*b-4*a*c)<0){//判断方程是否有解System.out.println("方程无解!");return;}else{System.out.println("方程有解!");}doublex1=(-b+Math.sqrt(b*b-4*a*c))/2*a;doublex2=(-b-Math.sqrt(b*b-4*a*c))/2*a;System.out.println("根分别是"+x1+"\t"+x2);}}

3、编写程序,输入一个字符,判断它是否为小写字母,如果是,将它转换成大

写字母,否则,不转换。

packageHomeWork03;importjava.util.Scanner;publicclassHomeWork03{publicstaticvoidmain(String[]args){//小写字母的ascll值为97-122//大写字母的ascll值为65-90System.out.println("请输入一个字母:\n");Scannerinput=newScanner(System.in);charzimu=input.next().charAt(0);if(zimu>=97&&zimu<=122){//判断是否是小写字母System.err.println("该字母是小写字母");zimu=(char)(zimu-32);//如果是小写字母则将其转换成大写字母System.err.println("转换之后的大写字母是:"+zimu);}else{System.out.println("该字母不是小写字母!");}}}

4、输入3个正数,判断能否构成一个三角形。

packageHomeWork04;importjava.util.Scanner;publicclassHomeWork04{publicstaticvoidmain(String[]args){inta;intb;intc;System.out.println("请输入三个正整数:");Scannerin=newScanner(System.in);a=in.nextInt();b=in.nextInt();c=in.nextInt();if(a<=0||b<=0||c<=0){System.out.println("输入的必须是正整数!");}if((a+b)>c&&(a+c)>b&&(b+c)>a){System.out.println("能构成三角形!");}else{System.out.println("不能构成三角形!");}}}

5、编写程序,对输入的年、月、日,给出该天是该年的第多少天?

packageHomeWork05;importjava.util.Scanner;publicclassHomeWork05{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.print("年");intyear=sc.nextInt();System.out.print("月");intmonth=sc.nextInt();System.out.print("日");intday=sc.nextInt();intdays=0;switch(month){case12:days+=30;case11:days+=31;case10:days+=30;case9:days+=31;case8:days+=31;case7:days+=30;case6:days+=31;case5:days+=30;case4:days+=31;case3:if((year%4==0&&year%100!=0)||(year%400==0)){days+=29;}else{days+=28;}case2:days+=31;case1:days+=day;}System.out.print("第"+days+"天");}}

6、编写程序,从键盘输入一个0~99999之间的任意数,判断输入的数是几位

数?

packageHomeWork06;importjava.util.Scanner;publicclassHomeWork06{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.print("请输入一个0~99999之间的任意数");intnumber=sc.nextInt();if(number/10000>=1&&number/10000<10){System.out.println(number+"\t是5位数");}elseif(number/1000>=1){System.out.println(number+"\t是4位数");}elseif(number/100>=1){System.out.println(number+"\t是3位数");}elseif(number/10>=1){System.out.println(number+"\t是2位数");}elseif(number/1>=1){System.out.println(number+"\t是1位数");}}}

7、编写程序,给定一个学生成绩,给出相应等级:

90~100优秀

80~89良好

70~79中等

60~69及格

0~59不及格

packageHomeWork07;importjava.util.Scanner;publicclassHomeWork07{publicstaticvoidmain(String[]args){HomeWork07jiejie=newHomeWork07();jiejie.chengjie();}voidchengjie(){Scannersc=newScanner(System.in);System.out.println("请输入学生成绩:");inta=sc.nextInt();if(a>=90&&a<=100){System.out.println("该学生的成绩是"+a+"\t成绩优秀");}elseif(a>=80&&a<90){System.out.println("该学生的成绩是"+a+"\t成绩良好");}elseif(a>=70&&a<80){System.out.println("该学生的成绩是"+a+"\t成绩中等");}elseif(a>=60&&a<70){System.out.println("该学生的成绩是"+a+"\t成绩及格");}else{System.out.println("该学生的成绩是"+a+"\t成绩不及格");}}}

8、编写程序,对输入的一个整数,按相反顺序输出该数。例如,输入为3578,

输出为8753。

packageHomeWork08;importjava.util.Scanner;publicclassHomeWork08{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.println("请输入一个整数:");intread=sc.nextInt();//方法一reverse()APISystem.out.println("方法一:");StringBuildersb=newStringBuilder(String.valueOf(read));System.out.println(sb.reverse());//方法二将字符串转换成字符数组,反序输出Stringstr=read+"";charfuzu[]=str.toCharArray();Stringtemp="";for(inta=fuzu.length-1;a>=0;a--){temp=temp+fuzu[a];}System.out.println("方法二:");System.out.println(temp);}}

9、用while循环,计算1~200之间所有3的倍数之和。

packageHomeWork09;publicclassHomeWork09{publicstaticvoidmain(String[]args){//用while循环,计算1~200之间所有3的倍数之和。inta=1;intsum=0;while(a<=200){if(a%3==0){sum=sum+a;}a++;}System.out.println("1~200之间所有3的倍数之和为:"+sum);}}

10、编写程序,输出200~500之间的所有素数。

packageHomeWork10;publicclassHomeWork10{publicstaticvoidmain(String[]args){intnum=200;while(num<=500){booleantag=true;//素数标记for(intd=2;d<=num-1;d++){if(num%d==0){tag=false;break;}}if(tag){//如果是素数System.out.println(num);}num++;}}}

11、编写程序解决“百钱买百鸡”问题。公鸡五钱一只,母鸡三钱一只,小鸡

一钱三只,现有百钱欲买百鸡,共有多少种买法?

packageHomeWork11;publicclassHomeWork11{publicstaticvoidmain(String[]args){/*、编写程序解决“百钱买百鸡”问题。*公鸡五钱一只,母鸡三钱一只,*小鸡一钱三只,*现有百钱欲买百鸡,共有多少种买法?*/for(intg=0;g<=20;g++){for(intm=0;m<=33;m++){for(intx=0;x<=100-g-m;x++){if(x%3==0&&5*g+m*3+x/3==100&&g+m+x==100){System.out.println("公鸡"+g+"只母鸡"+m+"只小鸡"+x+"只");}}}}}}

12、使用循环语句输出下面的图形。

#

###

#####

#######

#########

packageHomeWork12;publicclassHomeWork12{publicstaticvoidmain(String[]args){intaa=-1;for(inta=0;a<5;a++){aa+=2;for(intb=1;b<=aa;b++){System.out.print("#");}System.out.println();}}}

13、验证“鬼谷猜想”:对任意自然数,若是奇数,就对它乘以3再加1;若是

偶数,就对它除以2,这样得到一个新数,再按上述计算规则进行计算,一直进

行下去,最终必然得到1。

packageHomeWork13;importjava.util.Random;;publicclassHomeWork13{publicstaticvoidmain(String[]args){/**验证“鬼谷猜想”:对任意自然数,若是奇数,*就对它乘以3再加1;若是偶数,就对它除以2,*这样得到一个新数,*再按上述计算规则进行计算,*一直进行下去,最终必然得到1。*/intnum;Randomrd=newRandom();//Integer.MAX_VALUE为最大的整数num=1+rd.nextInt(Integer.MAX_VALUE);//产生数的范围-2[31]----2[31]-1//System.err.println(rd.nextInt(100));//产生数>=0且<100System.out.println("原本的数为"+num);while(num!=1){System.out.println("产生的新数是"+num);if(num%2==0){//偶数num=num/2;}else{num=num*3+1;}}System.out.println(num);}}

14、编程求1~10000之间的所有“完全数”,完全数是该数的所有因子之和等于该数的数。例如,6的因子有1、2、3,且6=1+2+3,所以6是完全数。

packageHomeWork14;publicclassHomeWork14{publicstaticbooleanisyinzi(intnum){intsum=0;//判断一个整数是不是一个完全数for(intd=num-1;d>=1;d--){if(num%d==0){sum+=d;}}returnsum==num;}publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstub/**编程求1~10000之间的所有“完全数”,*完全数是该数的所有因子之和等*于该数的数。例如,6的因子有1、2、3,*且6=1+2+3,所以6是完全数*/for(inta=1;a<=1000;a++){intnum=a;if(isyinzi(num)){System.out.println(num);}}}}

15、一个整数的各位数字之和能被9整除,则该数也能被9整除。编程验证给

定的整数能否被9整除。

packageHomeWork15;importjava.util.Random;publicclassHomeWork15{publicstaticvoidpanduan(intnum){intb=num/100;//百位数ints=num%100/10;//十位数intg=num%10;//个位数if(num%9==0){System.out.println(num+"能被9整除");if((b+s+g)%9==0){System.out.println("同时"+num+"的各个位数之和也能被9整除");}else{System.out.println("但是"+num+"的各个位数之和不能被9整除");}}elseSystem.out.println("nexttest!");}publicstaticvoidmain(String[]args){Randomrd=newRandom();intshu=10+rd.nextInt(90);shu=shu*9;panduan(shu);}}

16、猴子吃桃问题。猴子第一天摘下若干个桃子,当时就吃了一半,还不过瘾,

就又吃了一个。第二天又将剩下的桃子吃掉一半,又多吃了一个。以后每天都吃

前一天剩下的一半零一个。到第10天在想吃的时候就剩一个桃子了,求第一天共

摘下来多少个桃子?

packageHomeWork16;publicclassHomeWork16{publicstaticvoidmain(String[]args){inttotal=1;intday=10;for(inti=10;i>0;i--){System.out.println("第"+day+"天,有桃子"+total+"颗");total=(total+1)*2;day--;}}}

17、水仙花数是指一个n位数(n≥3),它的每个位上的数字的n次幂之和等

于它本身。(例如:1^3+5^3+3^3=153)。编程求出所有三位的水仙花数。

packageHomeWork17;publicclassHomeWork17{publicstaticvoidmain(String[]args){for(intnum=100;num<1000;num++){if(isshuixian(num)){System.out.println(num);}}}//判断一个数是不是水仙花数publicstaticbooleanisshuixian(intnum){intb=num/100;ints=num%100/10;intg=num%10;returnMath.pow(b,3)+Math.pow(s,3)+Math.pow(g,3)==numtrue:false;}}

18、已知XYZ+YZZ=532,其中,X、Y、Z为数字,编程求出X、Y和Z的值。

19、古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔

子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数

为多少?

packageHomeWork19;importjava.util.Scanner;publicclassHomeWork19{/**古典问题:有一对兔子,*从出生后第3个月起每个月都生一对兔子,*小兔子长到第三个月后每个月又生一对兔子,*假如兔子都不死,*问每个月的兔子总数为多少?*/publicintrubbit(intmon){if(mon<=2){return1;}else{returnrubbit(mon-1)+rubbit(mon-2);}}publicstaticvoidmain(String[]args){intr=1;intrr=1;intrrr=1;System.out.println("方法一:");for(inta=1;a<=12;a++){//12个月if(a<=2){r=1;}else{//当前月等于前两个月之和r=rr+rrr;rrr=rr;rr=r;}System.out.println(r*2);}System.out.println("方法二,求指定月份的兔子数量:");HomeWork19jisuan=newHomeWork19();System.out.println("请输入月份:");Scannersc=newScanner(System.in);intyue=sc.nextInt();System.out.println(yue+"月份的兔子数量是"+(jisuan.rubbit(yue))*2);}}

20、将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

packageHomeWork20;importjava.util.Scanner;publicclassHomeWork20{publicstaticvoidmain(String[]args){System.out.println("请输入一个整数:");Scannersc=newScanner(System.in);intnum=sc.nextInt();System.out.println(num+"的质因数有:");for(inti=2;i

THE END
1.家养猴子多少钱一只这个东西,但是不管是哪种猴子,这种猕猴性情相对温顺。你去宠物店问问看多少钱?我有小猴子卖,一般每个...https://edu.iask.sina.com.cn/jy/38IvzG5T1y7.html
2.宠物猴子多少钱一只从几千到几万不等宠物猴子多少钱一只,宠物猴的种类很多,常见的有猕猴,大懒和小懒等,宠物猴多少钱一只呢?这个问题也不好回答,现在主要说的是袖珍猴。下面随着波奇网的小编来了解一下吧。 迷你宠物猴价格不菲,我问过一位朋友,他养的一只宠物猴多少钱一只呢?他告诉我说刚满月的迷你宠物猴花了15000元。宠物猴的驯化时间不长,性格并不...http://news.boqii.com/small/89348.html
3.激光治疗后",打干扰素大概多少钱一只有问必答价格有很大的差别,如果是进口的有1000到1200都有的,国内生产的一般在100元左右。有的地方的每个医院...https://www.120ask.com/question/35186043.htm
1.宠物猴子多少钱一只,宠物猴子多少钱一只是可以卖的吗在网上经常会看到许多人饲养宠物猴的视频,许多视频中的宠物侯聪明伶俐、乖巧可爱,于是许多人就萌生出了养一只宠物猴子的想法。其实养宠物猴最应该关心的不是价格问题,因为猴子跟其它宠物不一样,不是随随便便找个宠物店买过来,然后就可以养了,因为猴子是保护动物,个人是不难随意买卖的,且猴子和猫狗等物种不一样,饲...https://chagougou.com/47638.html
2.猴子宠物多少钱一只宠物猴子最便宜多少钱一只?宠物猴子一般卖多少钱,想养一只小猴子去哪买多少钱? 您好, 第一,这东西违法,没有相关证件是不允许饲养的; 第二,猴子这个东西,很难养,你如果没有足够的时间和精力去让他学会理解你的意思并熟悉它的生活规律的话最好还是不要入手。 第三,如果你已经铁了心的要养并做好了准备,那么荥阳那边我知道有个猴厂,价格...https://www.lovechongbang.com/chongbk/4108.html
3.2022实验猴子多少钱一只?具体是什么品种?附实验猴养殖手续近日,一则“实验猴一只16万元,导致药企疯狂囤猴”的新闻引发网民不少的关注,而涨价原因是医药企业需求增大,另外一个则是一只实验猴仅用于一种疾病研究。部分人也看到了其中的商机存在,那2022实验猴子多少钱一只?具体是什么品种?附实验猴养殖手续如下: 一、2022实验猴子多少钱一只? https://www.tuliu.com/read-138560.html
4.出售长不大的宠物猴子哪里有卖小猴子多少钱一只其他装修入住 装修后多久可以入住 除甲醛最有效方法 搬家注意事项及禁忌 搬家公司收费标准 装修后马上入住危害 装修问答 > 其他 > 出售长不大的宠物猴子哪里有卖小猴子多少钱一只 触屏版| 电脑版| 关于我们 免费量房 0元设计 菜单 10秒报价 旧房改造https://ask.m.zx123.cn/show-23711804.html
5.古代玉猴子的价值评估与市场行情全解:了解其价格历史背景和收藏...古代玉猴子,作为古代玉器中的一种,具有极高的艺术价值和收藏价值。它们的出现,不仅反映了古人对自然界的观察和审美,更蕴含了丰富的文化寓意。随着近年来收藏市场的不断升温,古代玉猴子的价格也在不断攀升,成为了收藏爱好者争相追逐的焦点。 二、古代玉猴子多少钱一只 ...https://m.makepolo.com/post/fcyushi/229829.html
6.脑筋急转弯5000题分享脑筋急转弯5000题目及答案猴子每分钟能掰一个玉米,在果园里,一只猴子分钟能掰几个玉米? 答案:一个也没有掰到 后脑勺受伤的人怎样睡觉? 答案:闭着眼睛睡觉 狐狸精最擅长迷惑男人,那么什么"精"男女一齐迷? 答案:酒精 华先生有个本领,那就是能让见到他的人,都会自动手心朝上。这是怎样回事? 答案:他是个中医 画圣是我国哪位著名画家?https://app.ali213.net/mip/gl/805497.html
7.关于经典冷笑话谜语47、一颗心值多少钱?==>一亿(一心一意) 48、铅笔姓什么?==>萧,削(萧)铅笔 49、(1)一只小狗在沙漠中旅行,结果死了,他是怎么死的?==>他是憋死的,因为沙漠里没有电线杆尿尿 (2)一只小狗在沙漠中旅行,找到了电线杆,结果还是憋死了,为什么?==>点线杆上贴着"此处不许小便" ...https://www.cnfla.com/miyu/530961.html
8.指猴多少钱一只?7000到20000元左右(濒危动物)杂谈指猴也被叫做拇指猴,因为指和趾长而得名,体型非常的小巧,但是长相和猴子差不多,有些品种毛茸茸的,看起来非常的可爱,因此也被不少人喜爱。指猴不仅长得可爱,也因为生理特性和人类相似而被研究人员看重,因此它的价格也是比较高的,那么指猴多少钱一只呢?其实指猴一般7000到20000元左右,属于濒危物种。 https://www.wkfco.com/zatan/34362.html